System
The system addresses inefficiencies in task management by using AI to optimize task priorities and deadlines, monitor progress, and provide real-time updates, enhancing team productivity.
Patent Information
- Application Number
- JP2024119058
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-24
- Publication Date
- 2026-02-05
AI Technical Summary
Current task management systems struggle with effectively utilizing past project knowledge, setting optimal priorities and deadlines, monitoring task progress in real time, predicting potential risks, and smoothly transferring knowledge to new members, leading to inefficiencies and productivity declines.
A system that searches for similar tasks in past data to calculate optimal priorities and deadlines using AI models, monitors progress in real time, and provides real-time notifications and data updates to users, enabling efficient task management and collaboration.
Enhances project productivity by optimizing task settings, predicting risks, and ensuring real-time data synchronization, thereby improving overall team efficiency and task management.
Smart Images

Figure 2026017997000001_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] Current task management systems make it difficult to effectively utilize past project knowledge and lack standards for optimally setting the priority and deadlines for each task. Furthermore, there is a lack of a way to grasp the task progress of the entire team in real time and predict potential risks, which can lead to sudden overloads and schedule slippages. Furthermore, task management for new members and the transfer of past knowledge are not carried out smoothly, which can lead to a decline in overall project productivity. [Means for solving the problem]
[0005] The present invention solves the above problems by using the following means.
[0006] It provides a means for searching for similar tasks from past data, and calculates the optimal priority and deadline for a new task added by the user based on data on similar past tasks.
[0007] The calculated priority and deadline are displayed to the user, and a means is used to store tasks added or adjusted by the user in a database.
[0008] Provide a means to monitor the progress of saved tasks in real time and compare them with past data to predict and warn of potential risks.
[0009] It helps users manage tasks efficiently by notifying them of progress and warnings.
[0010] To provide a means for quickly transmitting and receiving data between a terminal and a server, thereby enabling a user to always obtain the latest information.
[0011] In addition, the accuracy of the plan can be improved by providing a means for estimating the completion time of new tasks based on past task data and evaluating the schedule margin.
[0012] A means is provided for presenting the user with examples of success and challenges in similar tasks from the past, and providing information useful for executing new tasks.
[0013] [Brief explanation of the drawings]
[0014] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0015] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0016] First, the terms used in the following description will be explained.
[0017] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0018] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0019] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0020] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0021] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0022] [First embodiment]
[0023] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0024] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0025] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0026] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0027] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0028] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0029] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0030] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0031] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0032] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0033] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0034] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0035] The shared TODO list "Everyone's TODO List" of the present invention is implemented through the following operations.
[0036] Server Operation
[0037] Managing Databases
[0038] The server stores task-related information in a database and provides a means to search for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and past results. The server stores the data of new tasks it receives and uses it to search for similar tasks.
[0039] Use of AI models
[0040] The server uses an AI model to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, it references data from similar past tasks to calculate the optimal priority and recommended deadline.
[0041] Monitoring progress
[0042] The server monitors the progress data collected in real time, predicts potential risks, and provides a means to generate warning messages for ongoing tasks and notify users by comparing them with past data.
[0043] Notifications and collaboration
[0044] The server sends progress and warnings to the terminal, notifying the user in real time, and also promptly sends and receives data to and from the terminal to maintain data integrity.
[0045] Device behavior
[0046] Adding and editing tasks
[0047] When a user adds a new task, the device provides an interface for entering the task details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI. The user can then review the recommended settings and modify or confirm them as necessary.
[0048] Displaying Information
[0049] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[0050] Real-time updates
[0051] When a user adds or edits a task, the device sends the data to the server and receives updated data from the server, allowing the entire task management system to always be kept up to date.
[0052] User operations
[0053] Creating a Task
[0054] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[0055] Review the recommended settings
[0056] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, high priority), adjusts them as necessary, and then confirms the task settings.
[0057] Monitoring progress
[0058] Users can view the progress of their current tasks and the entire project on their device, and can readjust task priorities and schedules based on progress data and warning messages displayed on their device.
[0059] Information Sharing
[0060] Even if a new member joins the team while a task is in progress, users can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[0061] Specific examples
[0062] Example 1: Adding a new task
[0063] When a user enters "Create a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then review and adopt the recommended settings and confirm the task.
[0064] Example 2: Checking and adjusting progress
[0065] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[0066] Through these operations, "Everyone's TODO List" supports efficient project management and progress, improving the productivity of the entire team.
[0067] The processing flow will be explained below.
[0068] Adding a new task
[0069] Step 1:
[0070] The user logs in to the terminal and opens the input screen for a new task.
[0071] Step 2:
[0072] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[0073] Step 3:
[0074] The user clicks the Add Task button.
[0075] Step 4:
[0076] The terminal receives the user's input data and creates a request to the server to add a task.
[0077] Step 5:
[0078] The device sends a request to the server.
[0079] Step 6:
[0080] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[0081] Step 7:
[0082] The server searches the database for similar past tasks.
[0083] Step 8:
[0084] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[0085] Step 9:
[0086] The server returns the calculation results (priority and deadline) to the terminal.
[0087] Step 10:
[0088] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[0089] Step 11:
[0090] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[0091] Step 12:
[0092] The user clicks the confirm button for the task.
[0093] Step 13:
[0094] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[0095] Step 14:
[0096] The device sends a request to the server.
[0097] Step 15:
[0098] The server receives the request and saves the confirmed task information in the database.
[0099] Step 16:
[0100] The server notifies other members of the project team of the task confirmation.
[0101] Checking and adjusting progress
[0102] Step 1:
[0103] The user opens the progress check screen on their device.
[0104] Step 2:
[0105] The device makes a request to the server for current progress data.
[0106] Step 3:
[0107] The device sends a request to the server.
[0108] Step 4:
[0109] A server receives the request and collects historical progress and real-time data from a database.
[0110] Step 5:
[0111] The server uses AI models to compare past progress and detect potential risks or overloads.
[0112] Step 6:
[0113] The server generates a warning message based on the detection results.
[0114] Step 7:
[0115] The server sends up-to-date progress data and warning messages back to the terminal.
[0116] Step 8:
[0117] The terminal receives the returned data from the server and displays it to the user.
[0118] Step 9:
[0119] The user sees progress data and warning messages.
[0120] Step 10:
[0121] Users can reschedule or adjust the priority of tasks as needed.
[0122] Step 11:
[0123] The user confirms the adjustments and enters them into the terminal.
[0124] Step 12:
[0125] The device makes a request to the server to send the adjustments.
[0126] Step 13:
[0127] The device sends a request to the server.
[0128] Step 14:
[0129] The server receives the request and updates the database with the adjustments.
[0130] Step 15:
[0131] The server will notify other team members of any adjustments as needed.
[0132] The above are the specific processing steps in the "Everyone's TODO List" system program.
[0133] Example 1
[0134] 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."
[0135] In modern project management, it is important to prioritize tasks, set deadlines, and monitor progress, but there is a lack of systems to efficiently perform these tasks. Furthermore, there is no established method for appropriately setting new tasks using data from similar past tasks. This results in a lack of ability to predict risks and reschedule tasks during the project, which can result in project delays or failure. Furthermore, real-time information sharing is difficult, so an effective system to improve the productivity of the entire team is needed.
[0136] 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.
[0137] In this invention, the server includes a means for searching for similar tasks from past data, a means for calculating the priority and deadline of a new task based on the data of similar tasks, and a means for calculating recommended settings using an AI model and providing them to the user. This makes it possible to recommend optimal priorities and deadlines when adding a new task, and also to monitor progress and warn of potential risks in real time.
[0138] The "means of searching for similar tasks from past data" is a function that searches for tasks that have elements similar to a new task based on existing task information stored in a database.
[0139] The "means for calculating the priority and deadline of a new task based on data on similar tasks" is a function that analyzes information on similar tasks that have been completed in the past and calculates the optimal priority and recommended deadline for a newly added task.
[0140] The "means for displaying the calculated priority and deadline to the user" is a function for presenting the calculated priority and deadline of the new task to the user through the user interface of the terminal.
[0141] The "means for saving tasks added or adjusted by the user to the database" is a function for recording task information newly added or modified by the user in the database.
[0142] "Means to monitor the progress of saved tasks and warn of potential risks" is a function that checks the progress in real time based on task information saved in a database and issues a warning to the user if delays or risks are detected.
[0143] The "means for notifying the terminal of the progress status and warnings" is a function for sending the status of the ongoing task and warning messages to the terminal to notify the user.
[0144] The "means for transmitting and receiving data between the terminal and the server" is a function for communicating task-related data bidirectionally between the terminal and the server, and constantly synchronizing the latest information.
[0145] "Means of calculating recommended settings using an AI model and providing them to the user" refers to a function that uses an artificial intelligence model to calculate optimal task settings (priority and deadline) based on past data and presents them to the user.
[0146] The shared TODO list "Everyone's TODO List" of the present invention is a system for efficiently managing tasks through collaboration between a cloud server and user terminals. This system includes the following elements:
[0147] Server Operation
[0148] Managing Databases
[0149] The server manages task-related information using a database such as PostgreSQL. Task details (e.g., task name, deadline, priority, progress, and past results) are stored in the database. The server uses this data to search for similar past tasks and provides them as reference data when creating new tasks.
[0150] Use of AI models
[0151] The server uses a generative AI model such as TensorFlow to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, the AI model references data from similar past tasks to calculate the optimal priority and recommended deadline. This recommended setting is then sent from the server to the device.
[0152] Progress monitoring and notification
[0153] The server monitors the progress of tasks in real time and provides a means to predict potential risks. By comparing past data with current progress, the server generates a warning message and sends it to the terminal if there is a possibility of delays or problems in the ongoing task.
[0154] Device behavior
[0155] Adding and editing tasks
[0156] When a user adds a new task, the device (e.g., a smartphone or PC) provides an interface for inputting the task details, deadline, priority, etc. The information entered by the user is sent to the server as an HTTP POST request.
[0157] Displaying Information
[0158] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[0159] Real-time updates
[0160] When a task is added or edited by the user, the device sends the data to the server and receives updated data from the server, ensuring that the entire task management system is always kept up to date.
[0161] User operations
[0162] Creating a Task
[0163] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[0164] Review the recommended settings
[0165] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, priority high), adjusts them as necessary, and then confirms the task settings.
[0166] Monitor and adjust progress
[0167] Users can view the progress of their current tasks and the entire project on their device, and adjust task priorities and schedules based on progress data and warning messages displayed on their device.
[0168] Specific examples
[0169] Example 1: Adding a new task
[0170] When a user enters "Write a report" as a new task on their device, the device sends this information to the server via an HTTP POST request. The server stores the task information in a database and uses an AI model to calculate the optimal priority of "High" and deadline of "2 days later." The server then sends the recommended settings back to the device, and the user can review and adopt the recommended settings to confirm the task.
[0171] Example 2: Checking and adjusting progress
[0172] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the progress data from the database and sends a response back to the device. The user can view the progress and, if any warnings are displayed, reschedule or adjust the priority of tasks to work more efficiently.
[0173] Prompt Sentence Examples
[0174] "Please add the following new task: Create meeting materials. Due next Friday. High priority."
[0175] Through the above-described operations, the "Everyone's TODO List" system can support efficient project management and progress, improving the productivity of the entire team.
[0176] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0177] Step 1:
[0178] The user enters a new task.
[0179] A user logs into a device and uses an interface to enter details such as the task name, due date, and priority. Specifically, the user adds a task called "Write Report" and sets its due date to "May 20th" and priority to "High." The entered data is sent to the server as an HTTP POST request.
[0180] Input: Task name, due date, and priority entered by the user.
[0181] Output: The HTTP POST request sent to the server.
[0182] Step 2:
[0183] The terminal sends the input information to the server.
[0184] The device packages the task information entered by the user into an HTTP POST request and sends it to the server, including details such as the task name, deadline, and priority.
[0185] Input: Task data entered by the user.
[0186] Output: The HTTP POST request that arrives at the server.
[0187] Step 3:
[0188] The server stores the input information in a database.
[0189] The server saves the received task information in a database (e.g., PostgreSQL). Specifically, it creates a new record and stores the task name, deadline, priority, user ID, etc.
[0190] Input: Task data included in the HTTP POST request.
[0191] Output: New task information is saved in the database.
[0192] Step 4:
[0193] The server uses an AI model to calculate recommended settings.
[0194] The server uses generative AI models such as TensorFlow to analyze past task data and recalculate the priority and deadline for new tasks. It also references data from past similar tasks to calculate optimal settings.
[0195] Input: Task data saved in Step 3 and similar past task data.
[0196] Output: The calculated recommended priority and due date.
[0197] Step 5:
[0198] The server sends the recommended settings back to the device.
[0199] The server sends the calculated recommended settings back to the device as a response, which includes the priority and deadline of the recommended task.
[0200] Input: The calculated recommendation priority and due date.
[0201] Output: A response containing the recommended configuration.
[0202] Step 6:
[0203] The device displays recommended settings to the user.
[0204] The device presents the recommended settings received from the server in a user interface, where the user can review the displayed information, including the task name, recommended deadline, and recommended priority.
[0205] Input: The recommended settings received from the server.
[0206] Output: The recommended settings displayed in the user interface.
[0207] Step 7:
[0208] The user reviews the recommended settings and corrects them as needed.
[0209] The user can check the AI's recommended settings displayed on the device and make adjustments as necessary. After adjustments are made, the user confirms the task settings.
[0210] Inputs: Recommended settings and user modifications.
[0211] Output: The finalized task settings.
[0212] Step 8:
[0213] The user confirms the task settings.
[0214] The user reviews the recommended settings, adjusts them as necessary, and then clicks the "Confirm" button to confirm the task.
[0215] Input: The modified or confirmed task settings.
[0216] Output: Commit operation completed.
[0217] Step 9:
[0218] The terminal transmits the confirmation information to the server.
[0219] The device sends the confirmed task information to the server again as an HTTP POST request, which includes the details of the finalized task.
[0220] Input: Confirmed task information.
[0221] Output: The HTTP POST request sent to the server.
[0222] Step 10:
[0223] The server monitors the progress and generates notifications as needed.
[0224] The server monitors the progress of tasks stored in the database and predicts potential risks. If progress is slower than in the past or deadlines are approaching, a warning message is generated and sent to the device.
[0225] Input: Task progress data stored in the database.
[0226] Output: Generates and sends warning messages to the terminal.
[0227] The above is the specific program processing flow of the "Everyone's TODO List" system.
[0228] (Application example 1)
[0229] 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."
[0230] Conventional task management systems are often shared by a single user or multiple users, making them unsuitable for factories where multiple robots work together. They also lack the functionality to monitor progress in real time and provide early notification of potential risks. This can lead to a decline in overall factory productivity, making it difficult to create an efficient work environment.
[0231] 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.
[0232] In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the agent of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for robots in the factory to autonomously share and adjust tasks and improve productivity. This enables multiple robots in the factory to efficiently cooperate and monitor and adjust the progress of tasks in real time.
[0233] "Past data" refers to information such as previously entered tasks, progress, and results.
[0234] "Means for searching for similar tasks" refers to algorithms or programs for finding tasks that are highly similar to the current task from past task data.
[0235] The "means for calculating the priority and deadline of a new task" refers to an algorithm or program for evaluating the importance and urgency of a newly added task and setting an appropriate deadline.
[0236] "Means for displaying to the user" refers to a display device or interface for providing the user with information such as the calculated priority and deadline.
[0237] "Means for saving tasks to a database" refers to a program or system for registering and managing tasks added or adjusted by a user in a database.
[0238] "Progress monitoring means" means a program or system used to track and monitor the progress or status of a task in real time.
[0239] "Means for warning of potential risks" refers to programs or systems that predict and issue warnings about problems or delays that may occur in the progress of a task.
[0240] "Means for notifying agents of progress and warnings" refers to a program or system for notifying a robot or other execution device of information regarding the progress and risks of a task.
[0241] "Means for transmitting and receiving data between the terminal and the server" refers to a communication means for bidirectionally exchanging task information and progress status data between the user's terminal and the central server.
[0242] "Means for factory robots to autonomously share and coordinate tasks to improve productivity" refers to algorithms and systems that enable multiple robots in a factory to cooperate with each other, share or coordinate tasks, and work efficiently.
[0243] The present invention is a shared TODO list system for improving the efficiency of collaborative work among robots in a factory, and is implemented with the following configuration.
[0244] Server Operation
[0245] Managing Databases
[0246] The server stores and manages past task data and progress data in a MySQL database, including task details, deadlines, priorities, progress, and past results. When a new task is added, the server adds that information to the database and uses it to search for similar tasks.
[0247] Use of AI models
[0248] The server uses AI models trained with machine learning libraries such as Scikit-learn and TensorFlow in Python. When a new task is added, the server calculates the optimal priority and recommended deadline based on past data. For example, if "assembly of part X" was added in the past, the server estimates the priority and deadline for "assembly of part Y" based on that information.
[0249] Monitoring progress
[0250] The server monitors the progress data collected by Apache Kafka in real time, and if an anomaly is detected when comparing it with past data, it predicts potential risks and alerts the agent.
[0251] Notifications and collaboration
[0252] The server notifies the robot of progress and warnings in real time, and transmits and receives data quickly to maintain data integrity, communicating via the factory's wireless network.
[0253] Device behavior
[0254] Adding and editing tasks
[0255] Users input new tasks through the robot's touchscreen display or a management terminal, and this information is sent to a server, which sends back recommendations (deadlines and priorities) based on the AI model.
[0256] Displaying Information
[0257] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc., allowing users to manage tasks efficiently.
[0258] Real-time updates
[0259] When a user adds or edits a task, the device sends the data to the server and receives the updated information, ensuring that all task information is kept up to date.
[0260] User operations
[0261] Creating a Task
[0262] A user logs in to the factory system, creates a new task, for example, "assembly of part Y," and sends the information to the server.
[0263] Review the recommended settings
[0264] Check the recommended settings returned by the server (e.g., deadline: December 15, 2023, priority: High) and adjust them as necessary. Then, finalize the task settings.
[0265] Monitoring progress
[0266] Users monitor the progress of their current tasks and the overall project on their devices, and can reschedule or adjust priorities based on progress data and warning messages displayed on their devices.
[0267] Information Sharing
[0268] When new tasks are added or new members join, they can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[0269] Specific examples
[0270] Example 1: Adding a new task
[0271] When a new task, "Assemble part Y," is added, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then confirm and adopt these recommended settings and finalize the task.
[0272] Example 2: Checking and adjusting progress
[0273] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[0274] Prompt Sentence Examples
[0275] Input: "New task added. Task name: Assemble part Y. Please refer to past data on similar tasks to estimate the optimal deadline and priority."
[0276] Output: "Estimated due date: December 15, 2023, Estimated priority: High"
[0277] With the above configuration, the "Shared TODO List System for Factory Robots" enables multiple robots within a factory to work together efficiently and manage tasks in real time.
[0278] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0279] Step 1:
[0280] To create a new task, the user enters the task details, deadline, priority, etc. into the device interface, and this data is sent to the server in JSON format.
[0281] (Input) Task information entered by the user (task content, deadline, priority).
[0282] (Data processing) The terminal converts the input data into JSON format.
[0283] (Output) The new task data in JSON format.
[0284] Step 2:
[0285] The server temporarily stores the received task data in a database, searches for similar past tasks using a generative AI model, and calculates the optimal priority and recommended deadline using a Python AI library.
[0286] (Input) New task data in JSON format.
[0287] (Data Computing) Priority and deadline estimation using AI models.
[0288] (Output) Estimated priority and recommended due date.
[0289] Step 3:
[0290] The server sends the estimated results to the device, which displays them to the user, who can then review the recommended settings and make any necessary adjustments.
[0291] (Input) Estimated priority and recommended due date.
[0292] (Data processing) The terminal converts the estimated results into a display format.
[0293] (Output) The displayed estimation result.
[0294] Step 4:
[0295] After the user checks and adjusts the recommended settings, the finalized task information is sent to the server, which then officially stores the task information in the database.
[0296] (Input) Task information adjusted by the user.
[0297] (Data processing) The terminal converts the adjusted task information into JSON format.
[0298] (Data storage) The server stores task information in a database.
[0299] (Output) Task information stored in the database.
[0300] Step 5:
[0301] The server monitors the progress in real time, collects and stores the progress data, and uses Apache Kafka to process the progress data and generate alerts if an anomaly is detected.
[0302] (Input) Progress data.
[0303] (Data calculation) Detection of abnormalities in progress data.
[0304] (Output) The warning message.
[0305] Step 6:
[0306] The server generates a warning message and sends it to the terminal, which notifies the agent. The terminal then displays the message to the user, urging them to take notice.
[0307] (Input) The warning message.
[0308] (Data processing) The terminal converts the message into a display format.
[0309] (Output) The displayed warning message.
[0310] Step 7:
[0311] The device receives progress data and alert messages and displays them to the user, who can then view the progress and reschedule or adjust the priority of the task.
[0312] (Input) Progress data and warning messages.
[0313] (Data processing) The terminal converts progress data and warning messages into a display format.
[0314] (Output) Progress data and warning messages displayed.
[0315] Step 8:
[0316] The robots in the factory coordinate their work with each other and carry out tasks autonomously based on instructions from the agent. The robots communicate with each other using built-in wireless communication modules.
[0317] (Input) Task instructions from the agent.
[0318] (Data calculation) The robot analyzes the instructions and converts them into work procedures.
[0319] (Output) Specific task execution by the robot.
[0320] 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.
[0321] ---
[0322] The shared TODO list "Everyone's TODO List" of the present invention is combined with an emotion engine to realize task management based on the user's emotions. The operation of the entire system of the present invention will be described below.
[0323] Server Operation
[0324] Managing Databases
[0325] The server stores information about tasks and emotions in a database and searches for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and emotional data. New task data is temporarily stored on the server, and then the emotional engine adds the user's emotional information.
[0326] Use of AI models
[0327] The server runs an AI model based on historical and emotional data to calculate optimal priorities and deadlines for new tasks, and uses an emotion engine to automatically adjust these settings based on the user's emotions.
[0328] Monitoring progress
[0329] The server monitors the progress data and user emotional data collected in real time, predicting and warning about stress levels and potential risks. By comparing the data with past data, if an abnormality is detected, a warning message is generated and notified to the user.
[0330] Notifications and collaboration
[0331] The server sends progress and emotional changes to the device and notifies the user in real time. This allows the user to understand how their emotional state affects the task and respond appropriately. Furthermore, data is sent and received quickly to and from the device to maintain data integrity.
[0332] Device behavior
[0333] Adding and editing tasks
[0334] When a user adds a new task, the device provides an interface for inputting the task's details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI and emotion engine. The user can then review, modify, and confirm these recommended settings.
[0335] Emotion recognition
[0336] The device is equipped with an emotion engine that recognizes emotions from the user's facial expressions, voice, text, etc. The recognized emotion data is sent to a server and used as a reference for task management.
[0337] Displaying Information
[0338] The device receives recommended settings, progress data, and emotional state information from the server and displays it to the user, allowing the user to adjust task priorities and deadlines and manage tasks efficiently.
[0339] User operations
[0340] Creating a Task
[0341] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user inputs the task's content, deadline, and priority.
[0342] Emotion input
[0343] While the user is using the device, the emotion engine recognizes the user's emotions in real time using facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine will capture that information.
[0344] Review the recommended settings
[0345] The user checks the recommended settings of the AI and emotion engine displayed on the device (for example, gradual deadline extension or priority adjustment according to the emotional state), makes any necessary adjustments, and then finalizes the task settings.
[0346] Monitoring progress
[0347] Users can view the progress of their current tasks and the overall project on their device, and can reschedule or adjust priorities for tasks based on progress data and emotion-based alert messages displayed on their device.
[0348] Information Sharing
[0349] Even if a new member joins the team while a task is in progress, the user can refer to information about past tasks and emotions, which allows for a smooth handover of work.
[0350] Specific examples
[0351] Example 1: Adding a new task
[0352] When a user enters "Write a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and emotional data, and the emotional engine adjusts the settings taking into account the user's current emotional state. The user then reviews and adopts the recommended settings and confirms the task.
[0353] Example 2: Checking and adjusting progress
[0354] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns warning messages based on the progress and emotional data to the device. The user can then reschedule or adjust priorities of tasks based on the displayed information to continue working efficiently.
[0355] Through the above operations, "Everyone's TODO List" supports efficient management and progress of projects, and improves productivity by adjusting tasks based on the user's emotions.
[0356] The processing flow will be explained below.
[0357] Adding new tasks and reflecting emotions
[0358] Step 1:
[0359] The user logs in to the terminal and opens the input screen for a new task.
[0360] Step 2:
[0361] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[0362] Step 3:
[0363] The user clicks the Add Task button.
[0364] Step 4:
[0365] The terminal receives the user's input data and creates a request to the server to add a task.
[0366] Step 5:
[0367] The device sends a request to the server.
[0368] Step 6:
[0369] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[0370] Step 7:
[0371] The server searches the database for similar past tasks.
[0372] Step 8:
[0373] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[0374] Step 9:
[0375] The device analyzes the user's facial expressions and voice using an emotion engine to recognize their current emotions.
[0376] Step 10:
[0377] The device transmits the recognized emotion data to the server.
[0378] Step 11:
[0379] The server receives the emotion data and adjusts the calculation results of the AI model based on the emotion data.
[0380] Step 12:
[0381] The server returns recommended settings (priority and deadline) adjusted based on the emotion to the device.
[0382] Step 13:
[0383] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[0384] Step 14:
[0385] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[0386] Step 15:
[0387] The user clicks the confirm button for the task.
[0388] Step 16:
[0389] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[0390] Step 17:
[0391] The device sends a request to the server.
[0392] Step 18:
[0393] The server receives the request and saves the confirmed task information in the database.
[0394] Step 19:
[0395] The server notifies other members of the project team of the task confirmation.
[0396] Checking progress and reflecting on emotions
[0397] Step 1:
[0398] The user opens the progress check screen on their device.
[0399] Step 2:
[0400] The device makes a request to the server for current progress data and latest emotion data.
[0401] Step 3:
[0402] The device sends a request to the server.
[0403] Step 4:
[0404] The server receives the request and collects historical progress and real-time data from a database.
[0405] Step 5:
[0406] The server analyzes progress data in real time based on emotion data to detect potential risks and overloads.
[0407] Step 6:
[0408] The server generates a warning message based on the detection results and adjusts the content of the warning based on the user's stress level.
[0409] Step 7:
[0410] The server sends back to the terminal a warning message based on the latest progress data and emotions.
[0411] Step 8:
[0412] The terminal receives the returned data from the server and displays it to the user.
[0413] Step 9:
[0414] The user sees progress data and warning messages.
[0415] Step 10:
[0416] Users can reschedule or adjust the priority of tasks as needed.
[0417] Step 11:
[0418] The user confirms the adjustments and enters them into the terminal.
[0419] Step 12:
[0420] The device makes a request to the server to send the adjustments.
[0421] Step 13:
[0422] The device sends a request to the server.
[0423] Step 14:
[0424] The server receives the request and updates the database with the adjustments.
[0425] Step 15:
[0426] The server will notify other team members of any adjustments as needed.
[0427] The above are the specific processing steps when combining an emotion engine with the "Everyone's TODO List" system.
[0428] Example 2
[0429] 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."
[0430] While conventional task management systems are capable of managing task progress and priorities, they have the problem of being unable to manage tasks taking into account the user's emotional state. This can lead to inappropriate task adjustments being made when the user feels stressed or fatigued, hindering efficient work. Furthermore, the lack of recommended task settings and warning functions based on the user's emotions also creates the problem of being unable to optimize task progress.
[0431] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a data storage device, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, means for acquiring user emotional data and reflecting it in task management, means for analyzing the user's emotional state using an emotion engine, and means for calculating optimal task settings taking the emotional data into account using an AI model. This enables task management that takes the user's emotional state into account, thereby realizing efficient and optimal task management while reducing user stress and fatigue.
[0432] A "similar task" is a task that has the same or very similar content as another task that has been performed in the past.
[0433] "Priority" is an indicator that indicates the order of execution and importance of tasks.
[0434] A "deadline" is the final time or date by which a task must be completed.
[0435] A "data storage device" is a device or means for long-term storage of information.
[0436] "Emotion data" refers to data that indicates the user's emotional state, obtained through facial recognition, voice analysis, text analysis, etc.
[0437] An "emotion engine" is software or hardware that analyzes the user's emotions and reflects the results throughout the system.
[0438] An "AI model" is a computational model that uses artificial intelligence to calculate optimal task settings based on past data and emotional data.
[0439] "Recommended settings" are the optimal priority and deadline settings for task execution calculated by the AI model.
[0440] A "potential risk" is a danger or problem that you want to avoid in advance in the ongoing task.
[0441] "Notification" refers to the act of conveying specific information from the system to the user.
[0442] The above are the definitions of important words included in the patent claims for the "Everyone's TODO List" system. ---
[0443] (Mode for carrying out the invention)
[0444] The present invention relates to a "To-Do List for Everyone" system that uses emotional information of users to manage tasks. The operation of the entire system of the present invention will be described below.
[0445] Server Operation
[0446] The server receives task information entered by the user and stores it in a database. The server searches for similar tasks and calculates the priority and deadline of new tasks based on past data. In this process, it uses an emotion engine to obtain the user's emotional data and uses a generative AI model to calculate recommended settings that take the emotional data into account.
[0447] Specifically, the emotion engine deployed on the server analyzes the user's emotional data in real time using technologies such as facial recognition, voice analysis, and text analysis. This allows the user's stress level, fatigue level, etc. The AI model takes this emotional data into account and calculates recommended settings for new tasks based on past task data.
[0448] For example, if a task called "Write a report" is added, the server will search past data and make recommendations based on the average priority and time required for "Write a report." At the same time, if the user's emotional state indicates stress, the server can extend the deadline a little or set the priority lower.
[0449] Device behavior
[0450] The device provides an interface that allows users to add and edit tasks. When a user adds a new task, the device sends the information to the server. When the server returns recommended settings, the device displays them to the user and provides an interface for the user to review, modify, and confirm the settings.
[0451] The device is also equipped with an emotion engine that recognizes emotional data from the user's facial expressions and voice. This allows emotional data to be acquired not only when the task is entered, but also while the task is being performed, and is sent to the server in real time.
[0452] For example, if a user adds a task called "Write a report" and enters its content, due date, and priority, the device will send information such as "Content: Write report," "Deadline: 3 days later," and "Priority: High" to the server. The server will then return recommended settings, suggesting "Priority: Medium" and "Deadline: 5 days later." The user can then review these settings, make any necessary changes, and confirm them.
[0453] User operations
[0454] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user enters the task's content, deadline, and priority. The terminal sends this information to the server, which then returns recommended settings. The user then confirms and adopts the recommended settings and confirms the task.
[0455] While the user is using the device, the emotion engine recognizes the user's emotions in real time through facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine captures that information and sends it to the server.
[0456] For example, when a user opens a progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns a warning message based on the progress and emotional data to the device. The user can reschedule or adjust the priority of tasks based on the displayed information and continue working efficiently.
[0457] Prompt Sentence Examples
[0458] "Please determine the priority of the new task. The task is 'Write a report', the deadline is '3 days from now', and the current emotional state is 'Stressed'."
[0459] "Predict risks to the entire project based on current progress and generate warning messages."
[0460] Through the above operations, "Everyone's TODO List" can realize task management that takes into account the user's emotional state, and support efficient and optimal task progress.
[0461] ---
[0462] The flow of the identification process in the second embodiment will be described with reference to FIG. 13.
[0463] Step 1:
[0464] The user enters the task into the terminal
[0465] Users access the device interface to add new tasks, entering information such as the task's content, deadline, and priority.
[0466] Input: Task details, deadline, priority
[0467] Output: Task information is sent to the terminal
[0468] Specific behavior: A user adds a task called "Write a report" and enters a due date of "3 days later" and a priority of "High."
[0469] Step 2:
[0470] The device sends task information to the server
[0471] The terminal transmits the task information input by the user to the server.
[0472] Input: Task information entered by the user
[0473] Output: Task data sent to the server
[0474] Specific operation: The device sends the data "Create report", "3 days later", and "High" to the server.
[0475] Step 3:
[0476] The server temporarily stores task information in a database
[0477] The server temporarily stores the received task information in a database.
[0478] Input: Task information sent from the terminal
[0479] Output: Task information stored in the database
[0480] Specific behavior: The server adds new task information to the "report_tasks" table.
[0481] Step 4:
[0482] The server obtains the user's emotional information using an emotion engine.
[0483] The server uses an emotion engine to obtain the user's current emotion information.
[0484] Input: Real-time user session data
[0485] Output: Parsed emotion data
[0486] Specific behavior: The emotion engine analyzes that "the user is currently feeling stressed."
[0487] Step 5:
[0488] The server uses generative AI models to calculate recommended settings.
[0489] The server uses a generative AI model based on past data and acquired emotional information to calculate the optimal priority and deadline for new tasks.
[0490] Input: Past task data and emotion data from the database
[0491] Output: Recommended settings (priority and deadline)
[0492] Specific operation: The server uses an AI model to calculate that "the recommended priority for this task is medium, and the recommended deadline is 5 days later."
[0493] Step 6:
[0494] The server sends the recommended settings to the device.
[0495] The server sends the calculated recommended settings to the device.
[0496] Input: Recommended settings calculated by the AI model
[0497] Output: Recommended settings sent to the device
[0498] Specific operation: The server sends the recommended settings of "Medium" and "After 5 days" to the device.
[0499] Step 7:
[0500] The device displays recommended settings to the user
[0501] The device will then display the recommended settings to the user, who can then finalize the task.
[0502] Input: Recommended settings received from the server
[0503] Output: Recommended settings displayed to the user
[0504] Specific behavior: The device displays "Create report - Priority: Medium - Deadline: 5 days later."
[0505] Step 8:
[0506] The user confirms, modifies, and confirms the recommended settings
[0507] The user reviews the recommended settings, makes corrections if necessary, and finally confirms the task.
[0508] Enter the recommended settings shown on your device.
[0509] Output: The confirmed task settings are sent to the server.
[0510] Specific behavior: The user changes the recommended settings to "High" and "After 4 days" and confirms.
[0511] Step 9:
[0512] The server monitors progress and emotion data in real time.
[0513] The server monitors progress and emotional data in real time, providing alerts and adjustments as needed.
[0514] Input: User progress data, real-time emotion data
[0515] Output: Warning message when an abnormality is detected
[0516] How it works: The server updates the user's progress and emotion data every minute and detects anomalies.
[0517] Step 10:
[0518] If the server detects an abnormality, it generates and sends a warning message.
[0519] If the server detects an abnormality, it immediately generates a warning message and sends it to the user.
[0520] Input: Progress data, emotion data
[0521] Output: The warning message sent to the user.
[0522] Specific behavior: The server detects that progress is behind schedule and notifies the user that the report creation is behind schedule.
[0523] Step 11:
[0524] Users can check the progress and reschedule if necessary
[0525] The user can check the progress on their device and reschedule or re-prioritize tasks as needed.
[0526] Input: Progress and warning messages displayed on the terminal
[0527] Output: Reconfigured task information
[0528] Specific behavior: The user checks the progress and resets the deadline for "Write report."
[0529] ---
[0530] The above is a detailed explanation of the processing steps of the "Everyone's TODO List" system.
[0531] (Application example 2)
[0532] 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."
[0533] Task management systems are useful in many situations for efficient work planning and progress management, but they lack functions such as schedule adjustment and task priority setting that take into account the user's emotional state. This often leads to users feeling stressed or overwhelmed, resulting in reduced work efficiency. In particular, in factory work sites, there is a need to monitor the emotions and stress of workers and manage tasks appropriately, but conventional systems are unable to adequately achieve this.
[0534] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for recognizing emotions in real time and adjusting the priority and deadline of tasks. This enables task management and schedule adjustment that takes the user's emotional state into consideration, thereby improving work efficiency and reducing stress.
[0535] "Past data" refers to previously recorded task information and emotional data.
[0536] "Similar tasks" refer to past tasks that have similar content, purpose, or conditions to the current task.
[0537] "Emotion recognition" refers to the act of identifying a user's current emotional state from their facial expressions, voice, writing, etc.
[0538] "Priority" refers to an indicator that indicates the order in which tasks are executed based on the urgency or importance of the task.
[0539] A "deadline" refers to the date and time by which a task should be completed.
[0540] "Adding and adjusting tasks" refers to the act of a user entering a new task into the system or modifying the content, deadline, or priority of an existing task.
[0541] A "database" refers to a collection of data for organizing and storing information.
[0542] "Progress" refers to information that indicates how far a task has progressed and what progress remains to be completed.
[0543] "Potential risks" refer to problems or obstacles that may arise during the course of a task.
[0544] "Warning" refers to a notification intended to inform the user of a potential risk or delay in progress.
[0545] "Terminal" refers to a device (e.g., computer, smartphone) that a user uses to operate the task management system.
[0546] "Server" refers to a central computer that processes and stores data sent from terminals.
[0547] "Sending and receiving data" refers to the act of transferring information between a terminal and a server.
[0548] "Display" refers to the act of visually showing information on a device screen.
[0549] "Real-time" refers to processing and display occurring immediately without delay.
[0550] A specific system program and embodiment for applying the present invention to a factory robot will be described.
[0551] Server Roles
[0552] The server implements the following functions:
[0553] 1. Search for similar tasks: The server searches for similar tasks from past data.
[0554] 2. Calculating priority and deadline for new tasks: Using data from similar tasks, an AI model is used to calculate the optimal priority and deadline for new tasks.
[0555] 3. Display to user: The calculated priority and deadline are displayed to the user in real time.
[0556] 4. Save task: Save the task added and adjusted by the user to the database.
[0557] 5. Progress monitoring and alerts: Monitor the progress of saved tasks and alert you to potential risks.
[0558] 6. Sending and receiving data: Sending and receiving data between the terminal and the server.
[0559] 7. Emotion Recognition: Adjust task priorities and deadlines using an emotion recognition engine.
[0560] Device Role
[0561] The terminal implements the following functions:
[0562] 1. Adding and editing tasks: Provides an interface for users to add and edit new tasks.
[0563] 2. Displaying information: Displaying information received from the server to the user, such as task priority, deadline, progress, warnings, and emotional state.
[0564] 3. Emotion recognition: The built-in camera and microphone are used to recognize the user's emotions in real time and send the data to the server.
[0565] User operations
[0566] A user uses the system in the following steps:
[0567] 1. Create a task: Create a new task and enter its content, due date, and priority.
[0568] 2. Emotion input: Emotions are automatically recognized through the built-in camera and microphone during use.
[0569] 3. Review the recommended settings: Review the recommended settings based on AI and emotions sent back from the server and make any necessary adjustments.
[0570] 4. Monitor progress: Check current tasks and overall progress, and reschedule or adjust priorities.
[0571] 5. Responding to warnings: If a warning message appears, check its contents and take the necessary action.
[0572] Hardware and Software Configuration
[0573] Use the following hardware and software:
[0574] Hardware: Cameras and microphones for emotion recognition (e.g., high-performance cameras and microphones), collaborative robots (e.g., general collaborative robots)
[0575] Software: emotion recognition algorithms (e.g., standard emotion recognition APIs), task management software (e.g., custom-built task managers)
[0576] Examples of specific examples and prompts
[0577] Example 1: Adding a task
[0578] When a factory worker adds a new task, "organizing shelves," the emotion engine detects the user's stress and the robot suggests extending the deadline.
[0579] Example prompt:
[0580] Add a new task: "Organize shelves"
[0581] Example 2: Checking and adjusting progress
[0582] The robot monitors the worker's progress and emotions in real time and sends a warning message if the "shelf-organizing" task is about to be delayed.
[0583] Example prompt:
[0584] Check your progress and adjust your schedule as needed
[0585] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0586] Step 1:
[0587] The user adds a new task. The user inputs the task details, deadline, and priority into the terminal. The terminal receives this data and sends it to the server. The input data received is "task details," "deadline," and "priority," and the output data is "data to send to the server."
[0588] Step 2:
[0589] The server searches for similar tasks from past data. The server extracts past records with similar task content from the database and generates search results. It receives "new task data" as input data and generates "similar task data" as output data.
[0590] Step 3:
[0591] The server calculates the priority and deadline of a new task based on data on similar tasks. The server uses a generative AI model to analyze similar task data and determine the optimal priority and deadline. It receives "similar task data" as input data and generates "calculated priority" and "calculated deadline" as output data.
[0592] Step 4:
[0593] The server displays the calculated priority and deadline to the user. The server then sends this data to the terminal, which then visually displays it to the user. The server receives the "calculated priority" and "calculated deadline" as input data and generates "display data" as output data.
[0594] Step 5:
[0595] The device performs emotion recognition. The device uses a built-in camera and microphone to recognize the user's facial expressions and voice in real time and sends the emotion data to the server. It receives "facial expressions" and "voice" as input data and generates "emotion data" as output data.
[0596] Step 6:
[0597] The server adjusts the priority and deadline of the task based on the emotion data. The server receives the emotion data and recalculates the optimization of the priority and deadline based on it. It receives "emotion data" as input data and generates "adjusted priority" and "adjusted deadline" as output data.
[0598] Step 7:
[0599] The server saves the tasks added and adjusted by the user to the database. The server creates a task object with the final priority and deadline and records it in the database. It receives a "task object" as input data and generates a "saved task" as output data.
[0600] Step 8:
[0601] The server monitors the progress of the saved tasks and warns of potential risks. The server tracks the progress of the tasks in real time and generates a warning if there is a risk by comparing it with past data. It receives "current progress data" as input data and generates "warning messages" as output data.
[0602] Step 9:
[0603] The server notifies the progress and warnings. The server sends warning messages to the terminal, which displays them to the user. It receives "warning messages" as input data and generates "notification data" as output data.
[0604] Step 10:
[0605] The terminal displays the final task progress, priority, deadline, and warning messages to the user. It receives "notification data" and "final task data" as input data and generates "display data" as output data.
[0606] 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.
[0607] 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.
[0608] 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.
[0609] [Second embodiment]
[0610] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0611] 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.
[0612] 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).
[0613] 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.
[0614] 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.
[0615] 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).
[0616] 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.
[0617] 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.
[0618] 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.
[0619] 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.
[0620] 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.
[0621] 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."
[0622] The shared TODO list "Everyone's TODO List" of the present invention is implemented through the following operations.
[0623] Server Operation
[0624] Managing Databases
[0625] The server stores task-related information in a database and provides a means to search for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and past results. The server stores the data of new tasks it receives and uses it to search for similar tasks.
[0626] Use of AI models
[0627] The server uses an AI model to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, it references data from similar past tasks to calculate the optimal priority and recommended deadline.
[0628] Monitoring progress
[0629] The server monitors the progress data collected in real time, predicts potential risks, and provides a means to generate warning messages for ongoing tasks and notify users by comparing them with past data.
[0630] Notifications and collaboration
[0631] The server sends progress and warnings to the terminal, notifying the user in real time. It also sends and receives data quickly to and from the terminal to maintain data integrity.
[0632] Device behavior
[0633] Adding and editing tasks
[0634] When a user adds a new task, the device provides an interface for entering the task details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI. The user can then review the recommended settings and modify or confirm them as necessary.
[0635] Displaying Information
[0636] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[0637] Real-time updates
[0638] When a user adds or edits a task, the device sends the data to the server and receives updated data from the server, allowing the entire task management system to always be kept up to date.
[0639] User operations
[0640] Creating a Task
[0641] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[0642] Review the recommended settings
[0643] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, high priority), adjusts them as necessary, and then confirms the task settings.
[0644] Monitoring progress
[0645] Users can view the progress of their current tasks and the entire project on their device, and can readjust task priorities and schedules based on progress data and warning messages displayed on their device.
[0646] Information Sharing
[0647] Even if a new member joins the team while a task is in progress, users can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[0648] Specific examples
[0649] Example 1: Adding a new task
[0650] When a user enters "Create a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then review and adopt the recommended settings and confirm the task.
[0651] Example 2: Checking and adjusting progress
[0652] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[0653] Through these operations, "Everyone's TODO List" supports efficient project management and progress, improving the productivity of the entire team.
[0654] The processing flow will be explained below.
[0655] Adding a new task
[0656] Step 1:
[0657] The user logs in to the terminal and opens the input screen for a new task.
[0658] Step 2:
[0659] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[0660] Step 3:
[0661] The user clicks the Add Task button.
[0662] Step 4:
[0663] The terminal receives the user's input data and creates a request to the server to add a task.
[0664] Step 5:
[0665] The device sends a request to the server.
[0666] Step 6:
[0667] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[0668] Step 7:
[0669] The server searches the database for similar past tasks.
[0670] Step 8:
[0671] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[0672] Step 9:
[0673] The server returns the calculation results (priority and deadline) to the terminal.
[0674] Step 10:
[0675] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[0676] Step 11:
[0677] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[0678] Step 12:
[0679] The user clicks the confirm button for the task.
[0680] Step 13:
[0681] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[0682] Step 14:
[0683] The device sends a request to the server.
[0684] Step 15:
[0685] The server receives the request and saves the confirmed task information in the database.
[0686] Step 16:
[0687] The server notifies other members of the project team of the task confirmation.
[0688] Checking and adjusting progress
[0689] Step 1:
[0690] The user opens the progress check screen on their device.
[0691] Step 2:
[0692] The device makes a request to the server for current progress data.
[0693] Step 3:
[0694] The device sends a request to the server.
[0695] Step 4:
[0696] A server receives the request and collects historical progress and real-time data from a database.
[0697] Step 5:
[0698] The server uses AI models to compare past progress and detect potential risks or overloads.
[0699] Step 6:
[0700] The server generates a warning message based on the detection results.
[0701] Step 7:
[0702] The server sends up-to-date progress data and warning messages back to the terminal.
[0703] Step 8:
[0704] The terminal receives the returned data from the server and displays it to the user.
[0705] Step 9:
[0706] The user sees progress data and warning messages.
[0707] Step 10:
[0708] Users can reschedule or adjust the priority of tasks as needed.
[0709] Step 11:
[0710] The user confirms the adjustments and enters them into the terminal.
[0711] Step 12:
[0712] The device makes a request to the server to send the adjustments.
[0713] Step 13:
[0714] The device sends a request to the server.
[0715] Step 14:
[0716] The server receives the request and updates the database with the adjustments.
[0717] Step 15:
[0718] The server will notify other team members of any adjustments as needed.
[0719] The above are the specific processing steps in the "Everyone's TODO List" system program.
[0720] Example 1
[0721] 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."
[0722] In modern project management, it is important to prioritize tasks, set deadlines, and monitor progress, but there is a lack of systems to efficiently perform these tasks. Furthermore, there is no established method for appropriately setting new tasks using data from similar past tasks. This results in a lack of ability to predict risks and reschedule tasks during the project, which can result in project delays or failure. Furthermore, real-time information sharing is difficult, so an effective system to improve the productivity of the entire team is needed.
[0723] 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.
[0724] In this invention, the server includes a means for searching for similar tasks from past data, a means for calculating the priority and deadline of a new task based on the data of similar tasks, and a means for calculating recommended settings using an AI model and providing them to the user. This makes it possible to recommend optimal priorities and deadlines when adding a new task, and also to monitor progress and warn of potential risks in real time.
[0725] The "means of searching for similar tasks from past data" is a function that searches for tasks that have elements similar to a new task based on existing task information stored in a database.
[0726] The "means for calculating the priority and deadline of a new task based on data on similar tasks" is a function that analyzes information on similar tasks that have been completed in the past and calculates the optimal priority and recommended deadline for a newly added task.
[0727] The "means for displaying the calculated priority and deadline to the user" is a function for presenting the calculated priority and deadline of the new task to the user through the user interface of the terminal.
[0728] The "means for saving tasks added or adjusted by the user to the database" is a function for recording task information newly added or modified by the user in the database.
[0729] "Means to monitor the progress of saved tasks and warn of potential risks" is a function that checks the progress in real time based on task information saved in a database and issues a warning to the user if delays or risks are detected.
[0730] The "means for notifying the terminal of the progress status and warnings" is a function for sending the status of the ongoing task and warning messages to the terminal to notify the user.
[0731] The "means for transmitting and receiving data between the terminal and the server" is a function for communicating task-related data bidirectionally between the terminal and the server, and constantly synchronizing the latest information.
[0732] "Means of calculating recommended settings using an AI model and providing them to the user" refers to a function that uses an artificial intelligence model to calculate optimal task settings (priority and deadline) based on past data and presents them to the user.
[0733] The shared TODO list "Everyone's TODO List" of the present invention is a system for efficiently managing tasks through collaboration between a cloud server and user terminals. This system includes the following elements:
[0734] Server Operation
[0735] Managing Databases
[0736] The server manages task-related information using a database such as PostgreSQL. Task details (e.g., task name, deadline, priority, progress, and past results) are stored in the database. The server uses this data to search for similar past tasks and provides them as reference data when creating new tasks.
[0737] Use of AI models
[0738] The server uses a generative AI model such as TensorFlow to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, the AI model references data from similar past tasks to calculate the optimal priority and recommended deadline. This recommended setting is then sent from the server to the device.
[0739] Progress monitoring and notification
[0740] The server monitors the progress of tasks in real time and provides a means to predict potential risks. By comparing past data with current progress, the server generates a warning message and sends it to the terminal if there is a possibility of delays or problems in the ongoing task.
[0741] Device behavior
[0742] Adding and editing tasks
[0743] When a user adds a new task, the device (e.g., a smartphone or PC) provides an interface for inputting the task details, deadline, priority, etc. The information entered by the user is sent to the server as an HTTP POST request.
[0744] Displaying Information
[0745] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[0746] Real-time updates
[0747] When a task is added or edited by the user, the device sends the data to the server and receives updated data from the server, ensuring that the entire task management system is always kept up to date.
[0748] User operations
[0749] Creating a Task
[0750] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[0751] Review the recommended settings
[0752] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, priority high), adjusts them as necessary, and then confirms the task settings.
[0753] Monitor and adjust progress
[0754] Users can view the progress of their current tasks and the entire project on their device, and adjust task priorities and schedules based on progress data and warning messages displayed on their device.
[0755] Specific examples
[0756] Example 1: Adding a new task
[0757] When a user enters "Write a report" as a new task on their device, the device sends this information to the server via an HTTP POST request. The server stores the task information in a database and uses an AI model to calculate the optimal priority of "High" and deadline of "2 days later." The server then sends the recommended settings back to the device, and the user can review and adopt the recommended settings to confirm the task.
[0758] Example 2: Checking and adjusting progress
[0759] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the progress data from the database and sends a response back to the device. The user can view the progress and, if any warnings are displayed, reschedule or adjust the priority of tasks to work more efficiently.
[0760] Prompt Sentence Examples
[0761] "Please add the following new task: Create meeting materials. Due next Friday. High priority."
[0762] Through the above-described operations, the "Everyone's TODO List" system can support efficient project management and progress, improving the productivity of the entire team.
[0763] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0764] Step 1:
[0765] The user enters a new task.
[0766] A user logs into a device and uses an interface to enter details such as the task name, due date, and priority. Specifically, the user adds a task called "Write Report" and sets its due date to "May 20th" and priority to "High." The entered data is sent to the server as an HTTP POST request.
[0767] Input: Task name, due date, and priority entered by the user.
[0768] Output: The HTTP POST request sent to the server.
[0769] Step 2:
[0770] The terminal sends the input information to the server.
[0771] The device packages the task information entered by the user into an HTTP POST request and sends it to the server, including details such as the task name, deadline, and priority.
[0772] Input: Task data entered by the user.
[0773] Output: The HTTP POST request that arrives at the server.
[0774] Step 3:
[0775] The server stores the input information in a database.
[0776] The server saves the received task information in a database (e.g., PostgreSQL). Specifically, it creates a new record and stores the task name, deadline, priority, user ID, etc.
[0777] Input: Task data included in the HTTP POST request.
[0778] Output: New task information is saved in the database.
[0779] Step 4:
[0780] The server uses an AI model to calculate recommended settings.
[0781] The server uses generative AI models such as TensorFlow to analyze past task data and recalculate the priority and deadline for new tasks. It also references data from past similar tasks to calculate optimal settings.
[0782] Input: Task data saved in Step 3 and similar past task data.
[0783] Output: The calculated recommended priority and due date.
[0784] Step 5:
[0785] The server sends the recommended settings back to the device.
[0786] The server sends the calculated recommended settings back to the device as a response, which includes the priority and deadline of the recommended task.
[0787] Input: The calculated recommendation priority and due date.
[0788] Output: A response containing the recommended configuration.
[0789] Step 6:
[0790] The device displays recommended settings to the user.
[0791] The device presents the recommended settings received from the server in a user interface, where the user can review the information displayed, including the task name, recommended deadline, and recommended priority.
[0792] Input: The recommended settings received from the server.
[0793] Output: The recommended settings displayed in the user interface.
[0794] Step 7:
[0795] The user reviews the recommended settings and corrects them as needed.
[0796] The user can check the AI's recommended settings displayed on the device and make adjustments as necessary. After adjustments are made, the user confirms the task settings.
[0797] Inputs: Recommended settings and user modifications.
[0798] Output: The finalized task settings.
[0799] Step 8:
[0800] The user confirms the task settings.
[0801] The user reviews the recommended settings, adjusts them as necessary, and then clicks the "Confirm" button to confirm the task.
[0802] Input: The modified or confirmed task settings.
[0803] Output: Commit operation completed.
[0804] Step 9:
[0805] The terminal transmits the confirmation information to the server.
[0806] The device sends the confirmed task information to the server again as an HTTP POST request, which includes the details of the finalized task.
[0807] Input: Confirmed task information.
[0808] Output: The HTTP POST request sent to the server.
[0809] Step 10:
[0810] The server monitors the progress and generates notifications as needed.
[0811] The server monitors the progress of tasks stored in the database and predicts potential risks. If progress is slower than in the past or deadlines are approaching, a warning message is generated and sent to the device.
[0812] Input: Task progress data stored in the database.
[0813] Output: Generates and sends warning messages to the terminal.
[0814] The above is the specific program processing flow of the "Everyone's TODO List" system.
[0815] (Application example 1)
[0816] 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."
[0817] Conventional task management systems are often shared by a single user or multiple users, making them unsuitable for factories where multiple robots work together. They also lack the functionality to monitor progress in real time and provide early notification of potential risks. This can lead to a decline in overall factory productivity, making it difficult to create an efficient work environment.
[0818] 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.
[0819] In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the agent of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for robots in the factory to autonomously share and adjust tasks and improve productivity. This enables multiple robots in the factory to efficiently cooperate and monitor and adjust the progress of tasks in real time.
[0820] "Past data" refers to information such as previously entered tasks, progress, and results.
[0821] "Means for searching for similar tasks" refers to algorithms or programs for finding tasks that are highly similar to the current task from past task data.
[0822] The "means for calculating the priority and deadline of a new task" refers to an algorithm or program for evaluating the importance and urgency of a newly added task and setting an appropriate deadline.
[0823] "Means for displaying to the user" refers to a display device or interface for providing the user with information such as the calculated priority and deadline.
[0824] "Means for saving tasks to a database" refers to a program or system for registering and managing tasks added or adjusted by a user in a database.
[0825] "Progress monitoring means" means a program or system used to track and monitor the progress or status of a task in real time.
[0826] "Means for warning of potential risks" refers to programs or systems that predict and issue warnings about problems or delays that may occur in the progress of a task.
[0827] "Means for notifying agents of progress and warnings" refers to a program or system for notifying a robot or other execution device of information regarding the progress and risks of a task.
[0828] "Means for transmitting and receiving data between the terminal and the server" refers to a communication means for bidirectionally exchanging task information and progress status data between the user's terminal and the central server.
[0829] "Means for factory robots to autonomously share and coordinate tasks to improve productivity" refers to algorithms and systems that enable multiple robots in a factory to cooperate with each other, share or coordinate tasks, and work efficiently.
[0830] The present invention is a shared TODO list system for improving the efficiency of collaborative work among robots in a factory, and is implemented with the following configuration.
[0831] Server Operation
[0832] Managing Databases
[0833] The server stores and manages past task data and progress data in a MySQL database, including task details, deadlines, priorities, progress, and past results. When a new task is added, the server adds that information to the database and uses it to search for similar tasks.
[0834] Use of AI models
[0835] The server uses AI models trained with machine learning libraries such as Scikit-learn and TensorFlow in Python. When a new task is added, the server calculates the optimal priority and recommended deadline based on past data. For example, if "assembly of part X" was added in the past, the server estimates the priority and deadline for "assembly of part Y" based on that information.
[0836] Monitoring progress
[0837] The server monitors the progress data collected by Apache Kafka in real time, and if an anomaly is detected when comparing it with past data, it predicts potential risks and alerts the agent.
[0838] Notifications and collaboration
[0839] The server notifies the robot of progress and warnings in real time, and transmits and receives data quickly to maintain data integrity, communicating via the factory's wireless network.
[0840] Device behavior
[0841] Adding and editing tasks
[0842] Users input new tasks through the robot's touchscreen display or a management terminal, and this information is sent to a server, which sends back recommendations (deadlines and priorities) based on the AI model.
[0843] Displaying Information
[0844] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc., allowing users to manage tasks efficiently.
[0845] Real-time updates
[0846] When a user adds or edits a task, the device sends the data to the server and receives the updated information, ensuring that all task information is kept up to date.
[0847] User operations
[0848] Creating a Task
[0849] A user logs in to the factory system, creates a new task, for example, "assembly of part Y," and sends the information to the server.
[0850] Review the recommended settings
[0851] Check the recommended settings returned by the server (e.g., deadline: December 15, 2023, priority: High) and adjust them as necessary. Then, finalize the task settings.
[0852] Monitoring progress
[0853] Users monitor the progress of their current tasks and the overall project on their devices, and can reschedule or adjust priorities based on progress data and warning messages displayed on their devices.
[0854] Information Sharing
[0855] When new tasks are added or new members join, they can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[0856] Specific examples
[0857] Example 1: Adding a new task
[0858] When a new task, "Assemble part Y," is added, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then confirm and adopt these recommended settings and finalize the task.
[0859] Example 2: Checking and adjusting progress
[0860] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[0861] Prompt Sentence Examples
[0862] Input: "New task added. Task name: Assemble part Y. Please refer to past data on similar tasks to estimate the optimal deadline and priority."
[0863] Output: "Estimated due date: December 15, 2023, Estimated priority: High"
[0864] With the above configuration, the "Shared TODO List System for Factory Robots" enables multiple robots within a factory to work together efficiently and manage tasks in real time.
[0865] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0866] Step 1:
[0867] To create a new task, the user enters the task details, deadline, priority, etc. into the device interface, and this data is sent to the server in JSON format.
[0868] (Input) Task information entered by the user (task content, deadline, priority).
[0869] (Data processing) The terminal converts the input data into JSON format.
[0870] (Output) The new task data in JSON format.
[0871] Step 2:
[0872] The server temporarily stores the received task data in a database, searches for similar past tasks using a generative AI model, and calculates the optimal priority and recommended deadline using a Python AI library.
[0873] (Input) New task data in JSON format.
[0874] (Data Computing) Priority and deadline estimation using AI models.
[0875] (Output) Estimated priority and recommended due date.
[0876] Step 3:
[0877] The server sends the estimated results to the device, which displays them to the user, who can then review the recommended settings and make any necessary adjustments.
[0878] (Input) Estimated priority and recommended due date.
[0879] (Data processing) The terminal converts the estimated results into a display format.
[0880] (Output) The displayed estimation result.
[0881] Step 4:
[0882] After the user checks and adjusts the recommended settings, the finalized task information is sent to the server, which then officially stores the task information in the database.
[0883] (Input) Task information adjusted by the user.
[0884] (Data processing) The terminal converts the adjusted task information into JSON format.
[0885] (Data storage) The server stores task information in a database.
[0886] (Output) Task information stored in the database.
[0887] Step 5:
[0888] The server monitors the progress in real time, collects and stores the progress data, and uses Apache Kafka to process the progress data and generate alerts if an anomaly is detected.
[0889] (Input) Progress data.
[0890] (Data calculation) Detection of abnormalities in progress data.
[0891] (Output) The warning message.
[0892] Step 6:
[0893] The server generates a warning message and sends it to the terminal, which notifies the agent. The terminal then displays the message to the user, urging them to take notice.
[0894] (Input) The warning message.
[0895] (Data processing) The terminal converts the message into a display format.
[0896] (Output) The displayed warning message.
[0897] Step 7:
[0898] The device receives progress data and alert messages and displays them to the user, who can then view the progress and reschedule or adjust the priority of the task.
[0899] (Input) Progress data and warning messages.
[0900] (Data processing) The terminal converts progress data and warning messages into a display format.
[0901] (Output) Progress data and warning messages displayed.
[0902] Step 8:
[0903] The robots in the factory coordinate their work with each other and carry out tasks autonomously based on instructions from the agent. The robots communicate with each other using built-in wireless communication modules.
[0904] (Input) Task instructions from the agent.
[0905] (Data calculation) The robot analyzes the instructions and converts them into work procedures.
[0906] (Output) Specific task execution by the robot.
[0907] 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.
[0908] ---
[0909] The shared TODO list "Everyone's TODO List" of the present invention is combined with an emotion engine to realize task management based on the user's emotions. The operation of the entire system of the present invention will be described below.
[0910] Server Operation
[0911] Managing Databases
[0912] The server stores information about tasks and emotions in a database and searches for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and emotional data. New task data is temporarily stored on the server, and then the emotional engine adds the user's emotional information.
[0913] Use of AI models
[0914] The server runs an AI model based on historical and emotional data to calculate optimal priorities and deadlines for new tasks, and uses an emotion engine to automatically adjust these settings based on the user's emotions.
[0915] Monitoring progress
[0916] The server monitors the progress data and user emotional data collected in real time, predicting and warning about stress levels and potential risks. By comparing the data with past data, if an abnormality is detected, a warning message is generated and notified to the user.
[0917] Notifications and collaboration
[0918] The server sends progress and emotional changes to the device and notifies the user in real time. This allows the user to understand how their emotional state affects the task and respond appropriately. Furthermore, data is sent and received quickly to and from the device to maintain data integrity.
[0919] Device behavior
[0920] Adding and editing tasks
[0921] When a user adds a new task, the device provides an interface for inputting the task's details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI and emotion engine. The user can then review, modify, and confirm these recommended settings.
[0922] Emotion recognition
[0923] The device is equipped with an emotion engine that recognizes emotions from the user's facial expressions, voice, text, etc. The recognized emotion data is sent to a server and used as a reference for task management.
[0924] Displaying Information
[0925] The device receives recommended settings, progress data, and emotional state information from the server and displays it to the user, allowing the user to adjust task priorities and deadlines and manage tasks efficiently.
[0926] User operations
[0927] Creating a Task
[0928] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user inputs the task's content, deadline, and priority.
[0929] Emotion input
[0930] While the user is using the device, the emotion engine recognizes the user's emotions in real time using facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine will capture that information.
[0931] Review the recommended settings
[0932] The user checks the recommended settings of the AI and emotion engine displayed on the device (for example, gradual deadline extension or priority adjustment according to the emotional state), makes any necessary adjustments, and then finalizes the task settings.
[0933] Monitoring progress
[0934] Users can view the progress of their current tasks and the overall project on their device, and can reschedule or adjust priorities for tasks based on progress data and emotion-based alert messages displayed on their device.
[0935] Information Sharing
[0936] Even if a new member joins the team while a task is in progress, the user can refer to information about past tasks and emotions, which allows for a smooth handover of work.
[0937] Specific examples
[0938] Example 1: Adding a new task
[0939] When a user enters "Write a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and emotional data, and the emotional engine adjusts the settings taking into account the user's current emotional state. The user then reviews and adopts the recommended settings and confirms the task.
[0940] Example 2: Checking and adjusting progress
[0941] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns warning messages based on the progress and emotional data to the device. The user can then reschedule or adjust priorities of tasks based on the displayed information to continue working efficiently.
[0942] Through the above operations, "Everyone's TODO List" supports efficient management and progress of projects, and improves productivity by adjusting tasks based on the user's emotions.
[0943] The processing flow will be explained below.
[0944] Adding new tasks and reflecting emotions
[0945] Step 1:
[0946] The user logs in to the terminal and opens the input screen for a new task.
[0947] Step 2:
[0948] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[0949] Step 3:
[0950] The user clicks the Add Task button.
[0951] Step 4:
[0952] The terminal receives the user's input data and creates a request to the server to add a task.
[0953] Step 5:
[0954] The device sends a request to the server.
[0955] Step 6:
[0956] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[0957] Step 7:
[0958] The server searches the database for similar past tasks.
[0959] Step 8:
[0960] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[0961] Step 9:
[0962] The device analyzes the user's facial expressions and voice using an emotion engine to recognize their current emotions.
[0963] Step 10:
[0964] The device transmits the recognized emotion data to the server.
[0965] Step 11:
[0966] The server receives the emotion data and adjusts the calculation results of the AI model based on the emotion data.
[0967] Step 12:
[0968] The server returns recommended settings (priority and deadline) adjusted based on the emotion to the device.
[0969] Step 13:
[0970] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[0971] Step 14:
[0972] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[0973] Step 15:
[0974] The user clicks the confirm button for the task.
[0975] Step 16:
[0976] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[0977] Step 17:
[0978] The device sends a request to the server.
[0979] Step 18:
[0980] The server receives the request and saves the confirmed task information in the database.
[0981] Step 19:
[0982] The server notifies other members of the project team of the task confirmation.
[0983] Checking progress and reflecting on emotions
[0984] Step 1:
[0985] The user opens the progress check screen on their device.
[0986] Step 2:
[0987] The device makes a request to the server for current progress data and latest emotion data.
[0988] Step 3:
[0989] The device sends a request to the server.
[0990] Step 4:
[0991] The server receives the request and collects historical progress and real-time data from a database.
[0992] Step 5:
[0993] The server analyzes progress data in real time based on emotion data to detect potential risks and overloads.
[0994] Step 6:
[0995] The server generates a warning message based on the detection results and adjusts the content of the warning based on the user's stress level.
[0996] Step 7:
[0997] The server sends back to the terminal a warning message based on the latest progress data and emotions.
[0998] Step 8:
[0999] The terminal receives the returned data from the server and displays it to the user.
[1000] Step 9:
[1001] The user sees progress data and warning messages.
[1002] Step 10:
[1003] Users can reschedule or adjust the priority of tasks as needed.
[1004] Step 11:
[1005] The user confirms the adjustments and enters them into the terminal.
[1006] Step 12:
[1007] The device makes a request to the server to send the adjustments.
[1008] Step 13:
[1009] The device sends a request to the server.
[1010] Step 14:
[1011] The server receives the request and updates the database with the adjustments.
[1012] Step 15:
[1013] The server will notify other team members of any adjustments as needed.
[1014] The above are the specific processing steps when combining an emotion engine with the "Everyone's TODO List" system.
[1015] Example 2
[1016] 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."
[1017] While conventional task management systems are capable of managing task progress and priorities, they have the problem of being unable to manage tasks taking into account the user's emotional state. This can lead to inappropriate task adjustments being made when the user feels stressed or fatigued, hindering efficient work. Furthermore, the lack of recommended task settings and warning functions based on the user's emotions also creates the problem of being unable to optimize task progress.
[1018] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a data storage device, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, means for acquiring user emotional data and reflecting it in task management, means for analyzing the user's emotional state using an emotion engine, and means for calculating optimal task settings taking the emotional data into account using an AI model. This enables task management that takes the user's emotional state into account, thereby realizing efficient and optimal task management while reducing user stress and fatigue.
[1019] A "similar task" is a task that has the same or very similar content as another task that has been performed in the past.
[1020] "Priority" is an indicator that indicates the order of execution and importance of tasks.
[1021] A "deadline" is the final time or date by which a task must be completed.
[1022] A "data storage device" is a device or means for long-term storage of information.
[1023] "Emotion data" refers to data that indicates the user's emotional state, obtained through facial recognition, voice analysis, text analysis, etc.
[1024] An "emotion engine" is software or hardware that analyzes the user's emotions and reflects the results throughout the system.
[1025] An "AI model" is a computational model that uses artificial intelligence to calculate optimal task settings based on past data and emotional data.
[1026] "Recommended settings" are the optimal priority and deadline settings for task execution calculated by the AI model.
[1027] A "potential risk" is a danger or problem that you want to avoid in advance in the ongoing task.
[1028] "Notification" refers to the act of conveying specific information from the system to the user.
[1029] The above are the definitions of important words included in the patent claims for the "Everyone's TODO List" system. ---
[1030] (Mode for carrying out the invention)
[1031] The present invention relates to a "To-Do List for Everyone" system that uses emotional information of users to manage tasks. The operation of the entire system of the present invention will be described below.
[1032] Server Operation
[1033] The server receives task information entered by the user and stores it in a database. The server searches for similar tasks and calculates the priority and deadline of new tasks based on past data. In this process, it uses an emotion engine to obtain the user's emotional data and uses a generative AI model to calculate recommended settings that take the emotional data into account.
[1034] Specifically, the emotion engine deployed on the server analyzes the user's emotional data in real time using technologies such as facial recognition, voice analysis, and text analysis. This allows the user's stress level, fatigue level, etc. The AI model takes this emotional data into account and calculates recommended settings for new tasks based on past task data.
[1035] For example, if a task called "Write a report" is added, the server will search past data and make recommendations based on the average priority and time required for "Write a report." At the same time, if the user's emotional state indicates stress, the server can extend the deadline a little or set the priority lower.
[1036] Device behavior
[1037] The device provides an interface that allows users to add and edit tasks. When a user adds a new task, the device sends the information to the server. When the server returns recommended settings, the device displays them to the user and provides an interface for the user to review, modify, and confirm the settings.
[1038] The device is also equipped with an emotion engine that recognizes emotional data from the user's facial expressions and voice. This allows emotional data to be acquired not only when the task is entered, but also while the task is being performed, and is sent to the server in real time.
[1039] For example, if a user adds a task called "Write a report" and enters its content, due date, and priority, the device will send information such as "Content: Write report," "Deadline: 3 days later," and "Priority: High" to the server. The server will then return recommended settings, suggesting "Priority: Medium" and "Deadline: 5 days later." The user can then review these settings, make any necessary changes, and confirm them.
[1040] User operations
[1041] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user enters the task's content, deadline, and priority. The terminal sends this information to the server, which then returns recommended settings. The user then confirms and adopts the recommended settings and confirms the task.
[1042] While the user is using the device, the emotion engine recognizes the user's emotions in real time through facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine captures that information and sends it to the server.
[1043] For example, when a user opens a progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns a warning message based on the progress and emotional data to the device. The user can reschedule or adjust the priority of tasks based on the displayed information and continue working efficiently.
[1044] Prompt Sentence Examples
[1045] "Please determine the priority of the new task. The task is 'Write a report', the deadline is '3 days from now', and the current emotional state is 'Stressed'."
[1046] "Predict risks to the entire project based on current progress and generate warning messages."
[1047] Through the above operations, "Everyone's TODO List" can realize task management that takes into account the user's emotional state, and support efficient and optimal task progress.
[1048] ---
[1049] The flow of the identification process in the second embodiment will be described with reference to FIG. 13.
[1050] Step 1:
[1051] The user enters the task into the terminal
[1052] Users access the device interface to add new tasks, entering information such as the task's content, deadline, and priority.
[1053] Input: Task details, deadline, priority
[1054] Output: Task information is sent to the terminal
[1055] Specific behavior: A user adds a task called "Write a report" and enters a due date of "3 days later" and a priority of "High."
[1056] Step 2:
[1057] The device sends task information to the server
[1058] The terminal transmits the task information input by the user to the server.
[1059] Input: Task information entered by the user
[1060] Output: Task data sent to the server
[1061] Specific operation: The device sends the data "Create report", "3 days later", and "High" to the server.
[1062] Step 3:
[1063] The server temporarily stores task information in a database
[1064] The server temporarily stores the received task information in a database.
[1065] Input: Task information sent from the terminal
[1066] Output: Task information stored in the database
[1067] Specific behavior: The server adds new task information to the "report_tasks" table.
[1068] Step 4:
[1069] The server obtains the user's emotional information using an emotion engine.
[1070] The server uses an emotion engine to obtain the user's current emotion information.
[1071] Input: Real-time user session data
[1072] Output: Parsed emotion data
[1073] Specific behavior: The emotion engine analyzes that "the user is currently feeling stressed."
[1074] Step 5:
[1075] The server uses generative AI models to calculate recommended settings.
[1076] The server uses a generative AI model based on past data and acquired emotional information to calculate the optimal priority and deadline for new tasks.
[1077] Input: Past task data and emotion data from the database
[1078] Output: Recommended settings (priority and deadline)
[1079] Specific operation: The server uses an AI model to calculate that "the recommended priority for this task is medium, and the recommended deadline is 5 days later."
[1080] Step 6:
[1081] The server sends the recommended settings to the device.
[1082] The server sends the calculated recommended settings to the device.
[1083] Input: Recommended settings calculated by the AI model
[1084] Output: Recommended settings sent to the device
[1085] Specific operation: The server sends the recommended settings of "Medium" and "After 5 days" to the device.
[1086] Step 7:
[1087] The device displays recommended settings to the user
[1088] The device will then display the recommended settings to the user, who can then finalize the task.
[1089] Input: Recommended settings received from the server
[1090] Output: Recommended settings displayed to the user
[1091] Specific behavior: The device displays "Create report - Priority: Medium - Deadline: 5 days later."
[1092] Step 8:
[1093] The user confirms, modifies, and confirms the recommended settings
[1094] The user reviews the recommended settings, makes corrections if necessary, and finally confirms the task.
[1095] Enter the recommended settings shown on your device.
[1096] Output: The confirmed task settings are sent to the server.
[1097] Specific behavior: The user changes the recommended settings to "High" and "After 4 days" and confirms.
[1098] Step 9:
[1099] The server monitors progress and emotion data in real time.
[1100] The server monitors progress and emotional data in real time, providing alerts and adjustments as needed.
[1101] Input: User progress data, real-time emotion data
[1102] Output: Warning message when an abnormality is detected
[1103] How it works: The server updates the user's progress and emotion data every minute and detects anomalies.
[1104] Step 10:
[1105] If the server detects an abnormality, it generates and sends a warning message.
[1106] If the server detects an abnormality, it immediately generates a warning message and sends it to the user.
[1107] Input: Progress data, emotion data
[1108] Output: The warning message sent to the user.
[1109] Specific behavior: The server detects that progress is behind schedule and notifies the user that the report creation is behind schedule.
[1110] Step 11:
[1111] Users can check the progress and reschedule if necessary
[1112] The user can check the progress on their device and reschedule or re-prioritize tasks as needed.
[1113] Input: Progress and warning messages displayed on the terminal
[1114] Output: Reconfigured task information
[1115] Specific behavior: The user checks the progress and resets the deadline for "Write report."
[1116] ---
[1117] The above is a detailed explanation of the processing steps of the "Everyone's TODO List" system.
[1118] (Application example 2)
[1119] 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."
[1120] Task management systems are useful in many situations for efficient work planning and progress management, but they lack functions such as schedule adjustment and task priority setting that take into account the user's emotional state. This often leads to users feeling stressed or overwhelmed, resulting in reduced work efficiency. In particular, in factory work sites, there is a need to monitor the emotions and stress of workers and manage tasks appropriately, but conventional systems are unable to adequately achieve this.
[1121] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for recognizing emotions in real time and adjusting the priority and deadline of tasks. This enables task management and schedule adjustment that takes the user's emotional state into consideration, thereby improving work efficiency and reducing stress.
[1122] "Past data" refers to previously recorded task information and emotional data.
[1123] "Similar tasks" refer to past tasks that have similar content, purpose, or conditions to the current task.
[1124] "Emotion recognition" refers to the act of identifying a user's current emotional state from their facial expressions, voice, writing, etc.
[1125] "Priority" refers to an indicator that indicates the order in which tasks are executed based on the urgency or importance of the task.
[1126] A "deadline" refers to the date and time by which a task should be completed.
[1127] "Adding and adjusting tasks" refers to the act of a user entering a new task into the system or modifying the content, deadline, or priority of an existing task.
[1128] A "database" refers to a collection of data for organizing and storing information.
[1129] "Progress" refers to information that indicates how far a task has progressed and what progress remains to be completed.
[1130] "Potential risks" refer to problems or obstacles that may arise during the course of a task.
[1131] "Warning" refers to a notification intended to inform the user of a potential risk or delay in progress.
[1132] "Terminal" refers to a device (e.g., computer, smartphone) that a user uses to operate the task management system.
[1133] "Server" refers to a central computer that processes and stores data sent from terminals.
[1134] "Sending and receiving data" refers to the act of transferring information between a terminal and a server.
[1135] "Display" refers to the act of visually showing information on a device screen.
[1136] "Real-time" refers to processing and display occurring immediately without delay.
[1137] A specific system program and embodiment for applying the present invention to a factory robot will be described.
[1138] Server Roles
[1139] The server implements the following functions:
[1140] 1. Search for similar tasks: The server searches for similar tasks from past data.
[1141] 2. Calculating priority and deadline for new tasks: Using data from similar tasks, an AI model is used to calculate the optimal priority and deadline for new tasks.
[1142] 3. Display to user: The calculated priority and deadline are displayed to the user in real time.
[1143] 4. Save task: Save the task added and adjusted by the user to the database.
[1144] 5. Progress monitoring and alerts: Monitor the progress of saved tasks and alert you to potential risks.
[1145] 6. Sending and receiving data: Sending and receiving data between the terminal and the server.
[1146] 7. Emotion Recognition: Adjust task priorities and deadlines using an emotion recognition engine.
[1147] Device Role
[1148] The terminal implements the following functions:
[1149] 1. Adding and editing tasks: Provides an interface for users to add and edit new tasks.
[1150] 2. Displaying information: Displaying information received from the server to the user, such as task priority, deadline, progress, warnings, and emotional state.
[1151] 3. Emotion recognition: The built-in camera and microphone are used to recognize the user's emotions in real time and send the data to the server.
[1152] User operations
[1153] A user uses the system in the following steps:
[1154] 1. Create a task: Create a new task and enter its content, due date, and priority.
[1155] 2. Emotion input: Emotions are automatically recognized through the built-in camera and microphone during use.
[1156] 3. Review the recommended settings: Review the recommended settings based on AI and emotions sent back from the server and make any necessary adjustments.
[1157] 4. Monitor progress: Check current tasks and overall progress, and reschedule or adjust priorities.
[1158] 5. Responding to warnings: If a warning message appears, check its contents and take the necessary action.
[1159] Hardware and Software Configuration
[1160] Use the following hardware and software:
[1161] Hardware: Cameras and microphones for emotion recognition (e.g., high-performance cameras and microphones), collaborative robots (e.g., general collaborative robots)
[1162] Software: emotion recognition algorithms (e.g., standard emotion recognition APIs), task management software (e.g., custom-built task managers)
[1163] Examples of specific examples and prompts
[1164] Example 1: Adding a task
[1165] When a factory worker adds a new task, "organizing shelves," the emotion engine detects the user's stress and the robot suggests extending the deadline.
[1166] Example prompt:
[1167] Add a new task: "Organize shelves"
[1168] Example 2: Checking and adjusting progress
[1169] The robot monitors the worker's progress and emotions in real time and sends a warning message if the "shelf-organizing" task is about to be delayed.
[1170] Example prompt:
[1171] Check your progress and adjust your schedule as needed
[1172] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1173] Step 1:
[1174] The user adds a new task. The user inputs the task details, deadline, and priority into the terminal. The terminal receives this data and sends it to the server. The input data received is "task details," "deadline," and "priority," and the output data is "data to send to the server."
[1175] Step 2:
[1176] The server searches for similar tasks from past data. The server extracts past records with similar task content from the database and generates search results. It receives "new task data" as input data and generates "similar task data" as output data.
[1177] Step 3:
[1178] The server calculates the priority and deadline of a new task based on data on similar tasks. The server uses a generative AI model to analyze similar task data and determine the optimal priority and deadline. It receives "similar task data" as input data and generates "calculated priority" and "calculated deadline" as output data.
[1179] Step 4:
[1180] The server displays the calculated priority and deadline to the user. The server then sends this data to the terminal, which then visually displays it to the user. The server receives the "calculated priority" and "calculated deadline" as input data and generates "display data" as output data.
[1181] Step 5:
[1182] The device performs emotion recognition. The device uses a built-in camera and microphone to recognize the user's facial expressions and voice in real time and sends the emotion data to the server. It receives "facial expressions" and "voice" as input data and generates "emotion data" as output data.
[1183] Step 6:
[1184] The server adjusts the priority and deadline of the task based on the emotion data. The server receives the emotion data and recalculates the optimization of the priority and deadline based on it. It receives "emotion data" as input data and generates "adjusted priority" and "adjusted deadline" as output data.
[1185] Step 7:
[1186] The server saves the tasks added and adjusted by the user to the database. The server creates a task object with the final priority and deadline and records it in the database. It receives a "task object" as input data and generates a "saved task" as output data.
[1187] Step 8:
[1188] The server monitors the progress of the saved tasks and warns of potential risks. The server tracks the progress of the tasks in real time and generates a warning if there is a risk by comparing it with past data. It receives "current progress data" as input data and generates "warning messages" as output data.
[1189] Step 9:
[1190] The server notifies the progress and warnings. The server sends warning messages to the terminal, which displays them to the user. It receives "warning messages" as input data and generates "notification data" as output data.
[1191] Step 10:
[1192] The terminal displays the final task progress, priority, deadline, and warning messages to the user. It receives "notification data" and "final task data" as input data and generates "display data" as output data.
[1193] 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.
[1194] 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.
[1195] 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.
[1196] [Third embodiment]
[1197] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1198] 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.
[1199] 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).
[1200] 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.
[1201] 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.
[1202] 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).
[1203] 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.
[1204] 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.
[1205] 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.
[1206] 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.
[1207] 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.
[1208] 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."
[1209] ---
[1210] The shared TODO list "Everyone's TODO List" of the present invention is implemented through the following operations.
[1211] Server Operation
[1212] Managing Databases
[1213] The server stores task-related information in a database and provides a means to search for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and past results. The server stores the data of new tasks it receives and uses it to search for similar tasks.
[1214] Use of AI models
[1215] The server uses an AI model to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, it references data from similar past tasks to calculate the optimal priority and recommended deadline.
[1216] Monitoring progress
[1217] The server monitors the progress data collected in real time, predicts potential risks, and provides a means to generate warning messages for ongoing tasks and notify users by comparing them with past data.
[1218] Notifications and collaboration
[1219] The server sends progress and warnings to the terminal, notifying the user in real time. It also sends and receives data quickly to and from the terminal to maintain data integrity.
[1220] Device behavior
[1221] Adding and editing tasks
[1222] When a user adds a new task, the device provides an interface for entering the task details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI. The user can then review the recommended settings and modify or confirm them as necessary.
[1223] Displaying Information
[1224] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[1225] Real-time updates
[1226] When a user adds or edits a task, the device sends the data to the server and receives updated data from the server, allowing the entire task management system to always be kept up to date.
[1227] User operations
[1228] Creating a Task
[1229] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[1230] Review the recommended settings
[1231] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, high priority), adjusts them as necessary, and then confirms the task settings.
[1232] Monitoring progress
[1233] Users can view the progress of their current tasks and the entire project on their device, and can readjust task priorities and schedules based on progress data and warning messages displayed on their device.
[1234] Information Sharing
[1235] Even if a new member joins the team while a task is in progress, users can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[1236] Specific examples
[1237] Example 1: Adding a new task
[1238] When a user enters "Create a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then review and adopt the recommended settings and confirm the task.
[1239] Example 2: Checking and adjusting progress
[1240] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[1241] Through these operations, "Everyone's TODO List" supports efficient project management and progress, improving the productivity of the entire team.
[1242] The processing flow will be explained below.
[1243] Adding a new task
[1244] Step 1:
[1245] The user logs in to the terminal and opens the input screen for a new task.
[1246] Step 2:
[1247] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[1248] Step 3:
[1249] The user clicks the Add Task button.
[1250] Step 4:
[1251] The terminal receives the user's input data and creates a request to the server to add a task.
[1252] Step 5:
[1253] The device sends a request to the server.
[1254] Step 6:
[1255] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[1256] Step 7:
[1257] The server searches the database for similar past tasks.
[1258] Step 8:
[1259] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[1260] Step 9:
[1261] The server returns the calculation results (priority and deadline) to the terminal.
[1262] Step 10:
[1263] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[1264] Step 11:
[1265] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[1266] Step 12:
[1267] The user clicks the confirm button for the task.
[1268] Step 13:
[1269] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[1270] Step 14:
[1271] The device sends a request to the server.
[1272] Step 15:
[1273] The server receives the request and saves the confirmed task information in the database.
[1274] Step 16:
[1275] The server notifies other members of the project team of the task confirmation.
[1276] Checking and adjusting progress
[1277] Step 1:
[1278] The user opens the progress check screen on their device.
[1279] Step 2:
[1280] The device makes a request to the server for current progress data.
[1281] Step 3:
[1282] The device sends a request to the server.
[1283] Step 4:
[1284] A server receives the request and collects historical progress and real-time data from a database.
[1285] Step 5:
[1286] The server uses AI models to compare past progress and detect potential risks or overloads.
[1287] Step 6:
[1288] The server generates a warning message based on the detection results.
[1289] Step 7:
[1290] The server sends up-to-date progress data and warning messages back to the terminal.
[1291] Step 8:
[1292] The terminal receives the returned data from the server and displays it to the user.
[1293] Step 9:
[1294] The user sees progress data and warning messages.
[1295] Step 10:
[1296] Users can reschedule or adjust the priority of tasks as needed.
[1297] Step 11:
[1298] The user confirms the adjustments and enters them into the terminal.
[1299] Step 12:
[1300] The device makes a request to the server to send the adjustments.
[1301] Step 13:
[1302] The device sends a request to the server.
[1303] Step 14:
[1304] The server receives the request and updates the database with the adjustments.
[1305] Step 15:
[1306] The server will notify other team members of any adjustments as needed.
[1307] The above are the specific processing steps in the "Everyone's TODO List" system program.
[1308] Example 1
[1309] 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."
[1310] In modern project management, it is important to prioritize tasks, set deadlines, and monitor progress, but there is a lack of systems to efficiently perform these tasks. Furthermore, there is no established method for appropriately setting new tasks using data from similar past tasks. This results in a lack of ability to predict risks and reschedule tasks during the project, which can result in project delays or failure. Furthermore, real-time information sharing is difficult, so an effective system to improve the productivity of the entire team is needed.
[1311] 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.
[1312] In this invention, the server includes a means for searching for similar tasks from past data, a means for calculating the priority and deadline of a new task based on the data of similar tasks, and a means for calculating recommended settings using an AI model and providing them to the user. This makes it possible to recommend optimal priorities and deadlines when adding a new task, and also to monitor progress and warn of potential risks in real time.
[1313] The "means of searching for similar tasks from past data" is a function that searches for tasks that have elements similar to a new task based on existing task information stored in a database.
[1314] The "means for calculating the priority and deadline of a new task based on data on similar tasks" is a function that analyzes information on similar tasks that have been completed in the past and calculates the optimal priority and recommended deadline for a newly added task.
[1315] The "means for displaying the calculated priority and deadline to the user" is a function for presenting the calculated priority and deadline of the new task to the user through the user interface of the terminal.
[1316] The "means for saving tasks added or adjusted by the user to the database" is a function for recording task information newly added or modified by the user in the database.
[1317] "Means to monitor the progress of saved tasks and warn of potential risks" is a function that checks the progress in real time based on task information saved in a database and issues a warning to the user if delays or risks are detected.
[1318] The "means for notifying the terminal of the progress status and warnings" is a function for sending the status of the ongoing task and warning messages to the terminal to notify the user.
[1319] The "means for transmitting and receiving data between the terminal and the server" is a function for communicating task-related data bidirectionally between the terminal and the server, and constantly synchronizing the latest information.
[1320] "Means of calculating recommended settings using an AI model and providing them to the user" refers to a function that uses an artificial intelligence model to calculate optimal task settings (priority and deadline) based on past data and presents them to the user.
[1321] The shared TODO list "Everyone's TODO List" of the present invention is a system for efficiently managing tasks through collaboration between a cloud server and user terminals. This system includes the following elements:
[1322] Server Operation
[1323] Managing Databases
[1324] The server manages task-related information using a database such as PostgreSQL. Task details (e.g., task name, deadline, priority, progress, and past results) are stored in the database. The server uses this data to search for similar past tasks and provides them as reference data when creating new tasks.
[1325] Use of AI models
[1326] The server uses a generative AI model such as TensorFlow to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, the AI model references data from similar past tasks to calculate the optimal priority and recommended deadline. This recommended setting is then sent from the server to the device.
[1327] Progress monitoring and notification
[1328] The server monitors the progress of tasks in real time and provides a means to predict potential risks. By comparing past data with current progress, the server generates a warning message and sends it to the terminal if there is a possibility of delays or problems in the ongoing task.
[1329] Device behavior
[1330] Adding and editing tasks
[1331] When a user adds a new task, the device (e.g., a smartphone or PC) provides an interface for inputting the task details, deadline, priority, etc. The information entered by the user is sent to the server as an HTTP POST request.
[1332] Displaying Information
[1333] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[1334] Real-time updates
[1335] When a task is added or edited by the user, the device sends the data to the server and receives updated data from the server, ensuring that the entire task management system is always kept up to date.
[1336] User operations
[1337] Creating a Task
[1338] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[1339] Review the recommended settings
[1340] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, priority high), adjusts them as necessary, and then confirms the task settings.
[1341] Monitor and adjust progress
[1342] Users can view the progress of their current tasks and the entire project on their device, and adjust task priorities and schedules based on progress data and warning messages displayed on their device.
[1343] Specific examples
[1344] Example 1: Adding a new task
[1345] When a user enters "Write a report" as a new task on their device, the device sends this information to the server via an HTTP POST request. The server stores the task information in a database and uses an AI model to calculate the optimal priority of "High" and deadline of "2 days later." The server then sends the recommended settings back to the device, and the user can review and adopt the recommended settings to confirm the task.
[1346] Example 2: Checking and adjusting progress
[1347] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the progress data from the database and sends a response back to the device. The user can view the progress and, if any warnings are displayed, reschedule or adjust the priority of tasks to work more efficiently.
[1348] Prompt Sentence Examples
[1349] "Please add the following new task: Create meeting materials. Due next Friday. High priority."
[1350] Through the above-described operations, the "Everyone's TODO List" system can support efficient project management and progress, improving the productivity of the entire team.
[1351] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1352] Step 1:
[1353] The user enters a new task.
[1354] A user logs into a device and uses an interface to enter details such as the task name, due date, and priority. Specifically, the user adds a task called "Write Report" and sets its due date to "May 20th" and priority to "High." The entered data is sent to the server as an HTTP POST request.
[1355] Input: Task name, due date, and priority entered by the user.
[1356] Output: The HTTP POST request sent to the server.
[1357] Step 2:
[1358] The terminal sends the input information to the server.
[1359] The device packages the task information entered by the user into an HTTP POST request and sends it to the server, including details such as the task name, deadline, and priority.
[1360] Input: Task data entered by the user.
[1361] Output: The HTTP POST request that arrives at the server.
[1362] Step 3:
[1363] The server stores the input information in a database.
[1364] The server saves the received task information in a database (e.g., PostgreSQL). Specifically, it creates a new record and stores the task name, deadline, priority, user ID, etc.
[1365] Input: Task data included in the HTTP POST request.
[1366] Output: New task information is saved in the database.
[1367] Step 4:
[1368] The server uses an AI model to calculate recommended settings.
[1369] The server uses generative AI models such as TensorFlow to analyze past task data and recalculate the priority and deadline for new tasks. It also references data from past similar tasks to calculate optimal settings.
[1370] Input: Task data saved in Step 3 and similar past task data.
[1371] Output: The calculated recommended priority and due date.
[1372] Step 5:
[1373] The server sends the recommended settings back to the device.
[1374] The server sends the calculated recommended settings back to the device as a response, which includes the priority and deadline of the recommended task.
[1375] Input: The calculated recommendation priority and due date.
[1376] Output: A response containing the recommended configuration.
[1377] Step 6:
[1378] The device displays recommended settings to the user.
[1379] The device presents the recommended settings received from the server in a user interface, where the user can review the information displayed, including the task name, recommended deadline, and recommended priority.
[1380] Input: The recommended settings received from the server.
[1381] Output: The recommended settings displayed in the user interface.
[1382] Step 7:
[1383] The user reviews the recommended settings and corrects them as needed.
[1384] The user can check the AI's recommended settings displayed on the device and make adjustments as necessary. After adjustments are made, the user confirms the task settings.
[1385] Inputs: Recommended settings and user modifications.
[1386] Output: The finalized task settings.
[1387] Step 8:
[1388] The user confirms the task settings.
[1389] The user reviews the recommended settings, adjusts them as necessary, and then clicks the "Confirm" button to confirm the task.
[1390] Input: The modified or confirmed task settings.
[1391] Output: Commit operation completed.
[1392] Step 9:
[1393] The terminal transmits the confirmation information to the server.
[1394] The device sends the confirmed task information to the server again as an HTTP POST request, which includes the details of the finalized task.
[1395] Input: Confirmed task information.
[1396] Output: The HTTP POST request sent to the server.
[1397] Step 10:
[1398] The server monitors the progress and generates notifications as needed.
[1399] The server monitors the progress of tasks stored in the database and predicts potential risks. If progress is slower than in the past or deadlines are approaching, a warning message is generated and sent to the device.
[1400] Input: Task progress data stored in the database.
[1401] Output: Generates and sends warning messages to the terminal.
[1402] The above is the specific program processing flow of the "Everyone's TODO List" system.
[1403] (Application example 1)
[1404] 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."
[1405] Conventional task management systems are often shared by a single user or multiple users, making them unsuitable for factories where multiple robots work together. They also lack the functionality to monitor progress in real time and provide early notification of potential risks. This can lead to a decline in overall factory productivity, making it difficult to create an efficient work environment.
[1406] 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.
[1407] In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the agent of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for robots in the factory to autonomously share and adjust tasks and improve productivity. This enables multiple robots in the factory to efficiently cooperate and monitor and adjust the progress of tasks in real time.
[1408] "Past data" refers to information such as previously entered tasks, progress, and results.
[1409] "Means for searching for similar tasks" refers to algorithms or programs for finding tasks that are highly similar to the current task from past task data.
[1410] The "means for calculating the priority and deadline of a new task" refers to an algorithm or program for evaluating the importance and urgency of a newly added task and setting an appropriate deadline.
[1411] "Means for displaying to the user" refers to a display device or interface for providing the user with information such as the calculated priority and deadline.
[1412] "Means for saving tasks to a database" refers to a program or system for registering and managing tasks added or adjusted by a user in a database.
[1413] "Progress monitoring means" means a program or system used to track and monitor the progress or status of a task in real time.
[1414] "Means for warning of potential risks" refers to programs or systems that predict and issue warnings about problems or delays that may occur in the progress of a task.
[1415] "Means for notifying agents of progress and warnings" refers to a program or system for notifying a robot or other execution device of information regarding the progress and risks of a task.
[1416] "Means for transmitting and receiving data between the terminal and the server" refers to a communication means for bidirectionally exchanging task information and progress status data between the user's terminal and the central server.
[1417] "Means for factory robots to autonomously share and coordinate tasks to improve productivity" refers to algorithms and systems that enable multiple robots in a factory to cooperate with each other, share or coordinate tasks, and work efficiently.
[1418] The present invention is a shared TODO list system for improving the efficiency of collaborative work among robots in a factory, and is implemented with the following configuration.
[1419] Server Operation
[1420] Managing Databases
[1421] The server stores and manages past task data and progress data in a MySQL database, including task details, deadlines, priorities, progress, and past results. When a new task is added, the server adds that information to the database and uses it to search for similar tasks.
[1422] Use of AI models
[1423] The server uses AI models trained with machine learning libraries such as Scikit-learn and TensorFlow in Python. When a new task is added, the server calculates the optimal priority and recommended deadline based on past data. For example, if "assembly of part X" was added in the past, the server estimates the priority and deadline for "assembly of part Y" based on that information.
[1424] Monitoring progress
[1425] The server monitors the progress data collected by Apache Kafka in real time, and if an anomaly is detected when comparing it with past data, it predicts potential risks and alerts the agent.
[1426] Notifications and collaboration
[1427] The server notifies the robot of progress and warnings in real time, and transmits and receives data quickly to maintain data integrity, communicating via the factory's wireless network.
[1428] Device behavior
[1429] Adding and editing tasks
[1430] Users input new tasks through the robot's touchscreen display or a management terminal, and this information is sent to a server, which sends back recommendations (deadlines and priorities) based on the AI model.
[1431] Displaying Information
[1432] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc., allowing users to manage tasks efficiently.
[1433] Real-time updates
[1434] When a user adds or edits a task, the device sends the data to the server and receives updated information, ensuring that all task information is kept up to date.
[1435] User operations
[1436] Creating a Task
[1437] A user logs in to the factory system, creates a new task, for example, "assembly of part Y," and sends the information to the server.
[1438] Review the recommended settings
[1439] Check the recommended settings returned by the server (e.g., deadline: December 15, 2023, priority: High) and adjust them as necessary. Then, finalize the task settings.
[1440] Monitoring progress
[1441] Users monitor the progress of their current tasks and the overall project on their devices, and can reschedule or adjust priorities based on progress data and warning messages displayed on their devices.
[1442] Information Sharing
[1443] When new tasks are added or new members join, they can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[1444] Specific examples
[1445] Example 1: Adding a new task
[1446] When a new task, "Assemble part Y," is added, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then confirm and adopt these recommended settings and finalize the task.
[1447] Example 2: Checking and adjusting progress
[1448] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[1449] Prompt Sentence Examples
[1450] Input: "New task added. Task name: Assemble part Y. Please refer to past data on similar tasks to estimate the optimal deadline and priority."
[1451] Output: "Estimated due date: December 15, 2023, Estimated priority: High"
[1452] With the above configuration, the "Shared TODO List System for Factory Robots" enables multiple robots within a factory to work together efficiently and manage tasks in real time.
[1453] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1454] Step 1:
[1455] To create a new task, the user enters the task details, deadline, priority, etc. into the device interface, and this data is sent to the server in JSON format.
[1456] (Input) Task information entered by the user (task content, deadline, priority).
[1457] (Data processing) The terminal converts the input data into JSON format.
[1458] (Output) The new task data in JSON format.
[1459] Step 2:
[1460] The server temporarily stores the received task data in a database, searches for similar past tasks using a generative AI model, and calculates the optimal priority and recommended deadline using a Python AI library.
[1461] (Input) New task data in JSON format.
[1462] (Data Computing) Priority and deadline estimation using AI models.
[1463] (Output) Estimated priority and recommended due date.
[1464] Step 3:
[1465] The server sends the estimated results to the device, which displays them to the user, who can then review the recommended settings and make any necessary adjustments.
[1466] (Input) Estimated priority and recommended due date.
[1467] (Data processing) The terminal converts the estimated results into a display format.
[1468] (Output) The displayed estimation result.
[1469] Step 4:
[1470] After the user checks and adjusts the recommended settings, the finalized task information is sent to the server, which then officially stores the task information in the database.
[1471] (Input) Task information adjusted by the user.
[1472] (Data processing) The terminal converts the adjusted task information into JSON format.
[1473] (Data storage) The server stores task information in a database.
[1474] (Output) Task information stored in the database.
[1475] Step 5:
[1476] The server monitors the progress in real time, collects and stores the progress data, and uses Apache Kafka to process the progress data and generate alerts if an anomaly is detected.
[1477] (Input) Progress data.
[1478] (Data calculation) Detection of abnormalities in progress data.
[1479] (Output) The warning message.
[1480] Step 6:
[1481] The server generates a warning message and sends it to the terminal, which notifies the agent. The terminal then displays the message to the user, urging them to take notice.
[1482] (Input) The warning message.
[1483] (Data processing) The terminal converts the message into a display format.
[1484] (Output) The displayed warning message.
[1485] Step 7:
[1486] The device receives progress data and alert messages and displays them to the user, who can then view the progress and reschedule or adjust the priority of the task.
[1487] (Input) Progress data and warning messages.
[1488] (Data processing) The terminal converts progress data and warning messages into a display format.
[1489] (Output) Progress data and warning messages displayed.
[1490] Step 8:
[1491] The robots in the factory coordinate their work with each other and carry out tasks autonomously based on instructions from the agent. The robots communicate with each other using built-in wireless communication modules.
[1492] (Input) Task instructions from the agent.
[1493] (Data calculation) The robot analyzes the instructions and converts them into work procedures.
[1494] (Output) Specific task execution by the robot.
[1495] 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.
[1496] ---
[1497] The shared TODO list "Everyone's TODO List" of the present invention is combined with an emotion engine to realize task management based on the user's emotions. The operation of the entire system of the present invention will be described below.
[1498] Server Operation
[1499] Managing Databases
[1500] The server stores information about tasks and emotions in a database and searches for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and emotional data. New task data is temporarily stored on the server, and then the emotional engine adds the user's emotional information.
[1501] Use of AI models
[1502] The server runs an AI model based on historical and emotional data to calculate optimal priorities and deadlines for new tasks, and uses an emotion engine to automatically adjust these settings based on the user's emotions.
[1503] Monitoring progress
[1504] The server monitors the progress data and user emotional data collected in real time, predicting and warning about stress levels and potential risks. By comparing the data with past data, if an abnormality is detected, a warning message is generated and notified to the user.
[1505] Notifications and collaboration
[1506] The server sends progress and emotional changes to the device and notifies the user in real time. This allows the user to understand how their emotional state affects the task and respond appropriately. Furthermore, data is sent and received quickly to and from the device to maintain data integrity.
[1507] Device behavior
[1508] Adding and editing tasks
[1509] When a user adds a new task, the device provides an interface for inputting the task's details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI and emotion engine. The user can then review, modify, and confirm these recommended settings.
[1510] Emotion recognition
[1511] The device is equipped with an emotion engine that recognizes emotions from the user's facial expressions, voice, text, etc. The recognized emotion data is sent to a server and used as a reference for task management.
[1512] Displaying Information
[1513] The device receives recommended settings, progress data, and emotional state information from the server and displays it to the user, allowing the user to adjust task priorities and deadlines and manage tasks efficiently.
[1514] User operations
[1515] Creating a Task
[1516] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user inputs the task's content, deadline, and priority.
[1517] Emotion input
[1518] While the user is using the device, the emotion engine recognizes the user's emotions in real time using facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine will capture that information.
[1519] Review the recommended settings
[1520] The user checks the recommended settings of the AI and emotion engine displayed on the device (for example, gradual deadline extension or priority adjustment according to the emotional state), makes any necessary adjustments, and then finalizes the task settings.
[1521] Monitoring progress
[1522] Users can view the progress of their current tasks and the overall project on their device, and can reschedule or adjust priorities for tasks based on progress data and emotion-based alert messages displayed on their device.
[1523] Information Sharing
[1524] Even if a new member joins the team while a task is in progress, the user can refer to information about past tasks and emotions, which allows for a smooth handover of work.
[1525] Specific examples
[1526] Example 1: Adding a new task
[1527] When a user enters "Write a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and emotional data, and the emotional engine adjusts the settings taking into account the user's current emotional state. The user then reviews and adopts the recommended settings and confirms the task.
[1528] Example 2: Checking and adjusting progress
[1529] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns warning messages based on the progress and emotional data to the device. The user can then reschedule or adjust priorities of tasks based on the displayed information to continue working efficiently.
[1530] Through the above operations, "Everyone's TODO List" supports efficient management and progress of projects, and improves productivity by adjusting tasks based on the user's emotions.
[1531] The processing flow will be explained below.
[1532] Adding new tasks and reflecting emotions
[1533] Step 1:
[1534] The user logs in to the terminal and opens the input screen for a new task.
[1535] Step 2:
[1536] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[1537] Step 3:
[1538] The user clicks the Add Task button.
[1539] Step 4:
[1540] The terminal receives the user's input data and creates a request to the server to add a task.
[1541] Step 5:
[1542] The device sends a request to the server.
[1543] Step 6:
[1544] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[1545] Step 7:
[1546] The server searches the database for similar past tasks.
[1547] Step 8:
[1548] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[1549] Step 9:
[1550] The device analyzes the user's facial expressions and voice using an emotion engine to recognize their current emotions.
[1551] Step 10:
[1552] The device transmits the recognized emotion data to the server.
[1553] Step 11:
[1554] The server receives the emotion data and adjusts the calculation results of the AI model based on the emotion data.
[1555] Step 12:
[1556] The server returns recommended settings (priority and deadline) adjusted based on the emotion to the device.
[1557] Step 13:
[1558] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[1559] Step 14:
[1560] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[1561] Step 15:
[1562] The user clicks the confirm button for the task.
[1563] Step 16:
[1564] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[1565] Step 17:
[1566] The device sends a request to the server.
[1567] Step 18:
[1568] The server receives the request and saves the confirmed task information in the database.
[1569] Step 19:
[1570] The server notifies other members of the project team of the task confirmation.
[1571] Checking progress and reflecting on emotions
[1572] Step 1:
[1573] The user opens the progress check screen on their device.
[1574] Step 2:
[1575] The device makes a request to the server for current progress data and latest emotion data.
[1576] Step 3:
[1577] The device sends a request to the server.
[1578] Step 4:
[1579] The server receives the request and collects historical progress and real-time data from a database.
[1580] Step 5:
[1581] The server analyzes progress data in real time based on emotion data to detect potential risks and overloads.
[1582] Step 6:
[1583] The server generates a warning message based on the detection results and adjusts the content of the warning based on the user's stress level.
[1584] Step 7:
[1585] The server sends back to the terminal a warning message based on the latest progress data and emotions.
[1586] Step 8:
[1587] The terminal receives the returned data from the server and displays it to the user.
[1588] Step 9:
[1589] The user sees progress data and warning messages.
[1590] Step 10:
[1591] Users can reschedule or adjust the priority of tasks as needed.
[1592] Step 11:
[1593] The user confirms the adjustments and enters them into the terminal.
[1594] Step 12:
[1595] The device makes a request to the server to send the adjustments.
[1596] Step 13:
[1597] The device sends a request to the server.
[1598] Step 14:
[1599] The server receives the request and updates the database with the adjustments.
[1600] Step 15:
[1601] The server will notify other team members of any adjustments as needed.
[1602] The above are the specific processing steps when combining an emotion engine with the "Everyone's TODO List" system.
[1603] Example 2
[1604] 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."
[1605] While conventional task management systems are capable of managing task progress and priorities, they have the problem of being unable to manage tasks taking into account the user's emotional state. This can lead to inappropriate task adjustments being made when the user feels stressed or fatigued, hindering efficient work. Furthermore, the lack of recommended task settings and warning functions based on the user's emotions also creates the problem of being unable to optimize task progress.
[1606] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a data storage device, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, means for acquiring user emotional data and reflecting it in task management, means for analyzing the user's emotional state using an emotion engine, and means for calculating optimal task settings taking the emotional data into account using an AI model. This enables task management that takes the user's emotional state into account, thereby realizing efficient and optimal task management while reducing user stress and fatigue.
[1607] A "similar task" is a task that has the same or very similar content as another task that has been performed in the past.
[1608] "Priority" is an indicator that indicates the order of execution and importance of tasks.
[1609] A "deadline" is the final time or date by which a task must be completed.
[1610] A "data storage device" is a device or means for long-term storage of information.
[1611] "Emotion data" refers to data that indicates the user's emotional state, obtained through facial recognition, voice analysis, text analysis, etc.
[1612] An "emotion engine" is software or hardware that analyzes the user's emotions and reflects the results throughout the system.
[1613] An "AI model" is a computational model that uses artificial intelligence to calculate optimal task settings based on past data and emotional data.
[1614] "Recommended settings" are the optimal priority and deadline settings for task execution calculated by the AI model.
[1615] A "potential risk" is a danger or problem that you want to avoid in advance in the ongoing task.
[1616] "Notification" refers to the act of conveying specific information from the system to the user.
[1617] The above are the definitions of important words included in the patent claims for the "Everyone's TODO List" system. ---
[1618] (Mode for carrying out the invention)
[1619] The present invention relates to a "To-Do List for Everyone" system that uses emotional information of users to manage tasks. The operation of the entire system of the present invention will be described below.
[1620] Server Operation
[1621] The server receives task information entered by the user and stores it in a database. The server searches for similar tasks and calculates the priority and deadline of new tasks based on past data. In this process, it uses an emotion engine to obtain the user's emotional data and uses a generative AI model to calculate recommended settings that take the emotional data into account.
[1622] Specifically, the emotion engine deployed on the server analyzes the user's emotional data in real time using technologies such as facial recognition, voice analysis, and text analysis. This allows the user's stress level, fatigue level, etc. The AI model takes this emotional data into account and calculates recommended settings for new tasks based on past task data.
[1623] For example, if a task called "Write a report" is added, the server will search past data and make recommendations based on the average priority and time required for "Write a report." At the same time, if the user's emotional state indicates stress, the server can extend the deadline a little or set the priority lower.
[1624] Device behavior
[1625] The device provides an interface that allows users to add and edit tasks. When a user adds a new task, the device sends the information to the server. When the server returns recommended settings, the device displays them to the user and provides an interface for the user to review, modify, and confirm the settings.
[1626] The device is also equipped with an emotion engine that recognizes emotional data from the user's facial expressions and voice. This allows emotional data to be acquired not only when the task is entered, but also while the task is being performed, and is sent to the server in real time.
[1627] For example, if a user adds a task called "Write a report" and enters its content, due date, and priority, the device will send information such as "Content: Write report," "Deadline: 3 days later," and "Priority: High" to the server. The server will then return recommended settings, suggesting "Priority: Medium" and "Deadline: 5 days later." The user can then review these settings, make any necessary changes, and confirm them.
[1628] User operations
[1629] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user enters the task's content, deadline, and priority. The terminal sends this information to the server, which then returns recommended settings. The user then confirms and adopts the recommended settings and confirms the task.
[1630] While the user is using the device, the emotion engine recognizes the user's emotions in real time through facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine captures that information and sends it to the server.
[1631] For example, when a user opens a progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns a warning message based on the progress and emotional data to the device. The user can reschedule or adjust the priority of tasks based on the displayed information and continue working efficiently.
[1632] Prompt Sentence Examples
[1633] "Please determine the priority of the new task. The task is 'Write a report', the deadline is '3 days from now', and the current emotional state is 'Stressed'."
[1634] "Predict risks to the entire project based on current progress and generate warning messages."
[1635] Through the above operations, "Everyone's TODO List" can realize task management that takes into account the user's emotional state, and support efficient and optimal task progress.
[1636] ---
[1637] The flow of the identification process in the second embodiment will be described with reference to FIG. 13.
[1638] Step 1:
[1639] The user enters the task into the terminal
[1640] Users access the device interface to add new tasks, entering information such as the task's content, deadline, and priority.
[1641] Input: Task details, deadline, priority
[1642] Output: Task information is sent to the terminal
[1643] Specific behavior: A user adds a task called "Write a report" and enters a due date of "3 days later" and a priority of "High."
[1644] Step 2:
[1645] The device sends task information to the server
[1646] The terminal transmits the task information input by the user to the server.
[1647] Input: Task information entered by the user
[1648] Output: Task data sent to the server
[1649] Specific operation: The device sends the data "Create report", "3 days later", and "High" to the server.
[1650] Step 3:
[1651] The server temporarily stores task information in a database
[1652] The server temporarily stores the received task information in a database.
[1653] Input: Task information sent from the terminal
[1654] Output: Task information stored in the database
[1655] Specific behavior: The server adds new task information to the "report_tasks" table.
[1656] Step 4:
[1657] The server obtains the user's emotional information using an emotion engine.
[1658] The server uses an emotion engine to obtain the user's current emotion information.
[1659] Input: Real-time user session data
[1660] Output: Parsed emotion data
[1661] Specific behavior: The emotion engine analyzes that "the user is currently feeling stressed."
[1662] Step 5:
[1663] The server uses generative AI models to calculate recommended settings.
[1664] The server uses a generative AI model based on past data and acquired emotional information to calculate the optimal priority and deadline for new tasks.
[1665] Input: Past task data and emotion data from the database
[1666] Output: Recommended settings (priority and deadline)
[1667] Specific operation: The server uses an AI model to calculate that "the recommended priority for this task is medium, and the recommended deadline is 5 days later."
[1668] Step 6:
[1669] The server sends the recommended settings to the device.
[1670] The server sends the calculated recommended settings to the device.
[1671] Input: Recommended settings calculated by the AI model
[1672] Output: Recommended settings sent to the device
[1673] Specific operation: The server sends the recommended settings of "Medium" and "After 5 days" to the device.
[1674] Step 7:
[1675] The device displays recommended settings to the user
[1676] The device will then display the recommended settings to the user, who can then finalize the task.
[1677] Input: Recommended settings received from the server
[1678] Output: Recommended settings displayed to the user
[1679] Specific behavior: The device displays "Create report - Priority: Medium - Deadline: 5 days later."
[1680] Step 8:
[1681] The user confirms, modifies, and confirms the recommended settings
[1682] The user reviews the recommended settings, makes corrections if necessary, and finally confirms the task.
[1683] Enter the recommended settings shown on your device.
[1684] Output: The confirmed task settings are sent to the server.
[1685] Specific behavior: The user changes the recommended settings to "High" and "After 4 days" and confirms.
[1686] Step 9:
[1687] The server monitors progress and emotion data in real time.
[1688] The server monitors progress and emotional data in real time, providing alerts and adjustments as needed.
[1689] Input: User progress data, real-time emotion data
[1690] Output: Warning message when an abnormality is detected
[1691] How it works: The server updates the user's progress and emotion data every minute and detects anomalies.
[1692] Step 10:
[1693] If the server detects an abnormality, it generates and sends a warning message.
[1694] If the server detects an abnormality, it immediately generates a warning message and sends it to the user.
[1695] Input: Progress data, emotion data
[1696] Output: The warning message sent to the user.
[1697] Specific behavior: The server detects that progress is behind schedule and notifies the user that the report creation is behind schedule.
[1698] Step 11:
[1699] Users can check the progress and reschedule if necessary
[1700] The user can check the progress on their device and reschedule or re-prioritize tasks as needed.
[1701] Input: Progress and warning messages displayed on the terminal
[1702] Output: Reconfigured task information
[1703] Specific behavior: The user checks the progress and resets the deadline for "Write report."
[1704] ---
[1705] The above is a detailed explanation of the processing steps of the "Everyone's TODO List" system.
[1706] (Application example 2)
[1707] 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."
[1708] Task management systems are useful in many situations for efficient work planning and progress management, but they lack functions such as schedule adjustment and task priority setting that take into account the user's emotional state. This often leads to users feeling stressed or overwhelmed, resulting in reduced work efficiency. In particular, in factory work sites, there is a need to monitor the emotions and stress of workers and manage tasks appropriately, but conventional systems are unable to adequately achieve this.
[1709] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for recognizing emotions in real time and adjusting the priority and deadline of tasks. This enables task management and schedule adjustment that takes the user's emotional state into consideration, thereby improving work efficiency and reducing stress.
[1710] "Past data" refers to previously recorded task information and emotional data.
[1711] "Similar tasks" refer to past tasks that have similar content, purpose, or conditions to the current task.
[1712] "Emotion recognition" refers to the act of identifying a user's current emotional state from their facial expressions, voice, writing, etc.
[1713] "Priority" refers to an indicator that indicates the order in which tasks are executed based on the urgency or importance of the task.
[1714] A "deadline" refers to the date and time by which a task should be completed.
[1715] "Adding and adjusting tasks" refers to the act of a user entering a new task into the system or modifying the content, deadline, or priority of an existing task.
[1716] A "database" refers to a collection of data for organizing and storing information.
[1717] "Progress" refers to information that indicates how far a task has progressed and what progress remains to be completed.
[1718] "Potential risks" refer to problems or obstacles that may arise during the course of a task.
[1719] "Warning" refers to a notification intended to inform the user of a potential risk or delay in progress.
[1720] "Terminal" refers to a device (e.g., computer, smartphone) that a user uses to operate the task management system.
[1721] "Server" refers to a central computer that processes and stores data sent from terminals.
[1722] "Sending and receiving data" refers to the act of transferring information between a terminal and a server.
[1723] "Display" refers to the act of visually showing information on a device screen.
[1724] "Real-time" refers to processing and display occurring immediately without delay.
[1725] A specific system program and embodiment for applying the present invention to a factory robot will be described.
[1726] Server Roles
[1727] The server implements the following functions:
[1728] 1. Search for similar tasks: The server searches for similar tasks from past data.
[1729] 2. Calculating priority and deadline for new tasks: Using data from similar tasks, an AI model is used to calculate the optimal priority and deadline for new tasks.
[1730] 3. Display to user: The calculated priority and deadline are displayed to the user in real time.
[1731] 4. Save task: Save the task added and adjusted by the user to the database.
[1732] 5. Progress monitoring and alerts: Monitor the progress of saved tasks and alert you to potential risks.
[1733] 6. Sending and receiving data: Sending and receiving data between the terminal and the server.
[1734] 7. Emotion Recognition: Adjust task priorities and deadlines using an emotion recognition engine.
[1735] Device Role
[1736] The terminal implements the following functions:
[1737] 1. Adding and editing tasks: Provides an interface for users to add and edit new tasks.
[1738] 2. Displaying information: Displaying information received from the server to the user, such as task priority, deadline, progress, warnings, and emotional state.
[1739] 3. Emotion recognition: The built-in camera and microphone are used to recognize the user's emotions in real time and send the data to the server.
[1740] User operations
[1741] A user uses the system in the following steps:
[1742] 1. Create a task: Create a new task and enter its content, due date, and priority.
[1743] 2. Emotion input: Emotions are automatically recognized through the built-in camera and microphone during use.
[1744] 3. Review the recommended settings: Review the recommended settings based on AI and emotions sent back from the server and make any necessary adjustments.
[1745] 4. Monitor progress: Check current tasks and overall progress, and reschedule or adjust priorities.
[1746] 5. Responding to warnings: If a warning message appears, check its contents and take the necessary action.
[1747] Hardware and Software Configuration
[1748] Use the following hardware and software:
[1749] Hardware: Cameras and microphones for emotion recognition (e.g., high-performance cameras and microphones), collaborative robots (e.g., general collaborative robots)
[1750] Software: emotion recognition algorithms (e.g., standard emotion recognition APIs), task management software (e.g., custom-built task managers)
[1751] Examples of specific examples and prompts
[1752] Example 1: Adding a task
[1753] When a factory worker adds a new task, "organizing shelves," the emotion engine detects the user's stress and the robot suggests extending the deadline.
[1754] Example prompt:
[1755] Add a new task: "Organize shelves"
[1756] Example 2: Checking and adjusting progress
[1757] The robot monitors the worker's progress and emotions in real time and sends a warning message if the "shelf-organizing" task is about to be delayed.
[1758] Example prompt:
[1759] Check your progress and adjust your schedule as needed
[1760] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1761] Step 1:
[1762] The user adds a new task. The user inputs the task details, deadline, and priority into the terminal. The terminal receives this data and sends it to the server. The input data received is "task details," "deadline," and "priority," and the output data is "data to send to the server."
[1763] Step 2:
[1764] The server searches for similar tasks from past data. The server extracts past records with similar task content from the database and generates search results. It receives "new task data" as input data and generates "similar task data" as output data.
[1765] Step 3:
[1766] The server calculates the priority and deadline of a new task based on data on similar tasks. The server uses a generative AI model to analyze similar task data and determine the optimal priority and deadline. It receives "similar task data" as input data and generates "calculated priority" and "calculated deadline" as output data.
[1767] Step 4:
[1768] The server displays the calculated priority and deadline to the user. The server then sends this data to the terminal, which then visually displays it to the user. The server receives the "calculated priority" and "calculated deadline" as input data and generates "display data" as output data.
[1769] Step 5:
[1770] The device performs emotion recognition. The device uses a built-in camera and microphone to recognize the user's facial expressions and voice in real time and sends the emotion data to the server. It receives "facial expressions" and "voice" as input data and generates "emotion data" as output data.
[1771] Step 6:
[1772] The server adjusts the priority and deadline of the task based on the emotion data. The server receives the emotion data and recalculates the optimization of the priority and deadline based on it. It receives "emotion data" as input data and generates "adjusted priority" and "adjusted deadline" as output data.
[1773] Step 7:
[1774] The server saves the tasks added and adjusted by the user to the database. The server creates a task object with the final priority and deadline and records it in the database. It receives a "task object" as input data and generates a "saved task" as output data.
[1775] Step 8:
[1776] The server monitors the progress of the saved tasks and warns of potential risks. The server tracks the progress of the tasks in real time and generates a warning if there is a risk by comparing it with past data. It receives "current progress data" as input data and generates "warning messages" as output data.
[1777] Step 9:
[1778] The server notifies the progress and warnings. The server sends warning messages to the terminal, which displays them to the user. It receives "warning messages" as input data and generates "notification data" as output data.
[1779] Step 10:
[1780] The terminal displays the final task progress, priority, deadline, and warning messages to the user. It receives "notification data" and "final task data" as input data and generates "display data" as output data.
[1781] 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.
[1782] 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.
[1783] 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.
[1784] [Fourth embodiment]
[1785] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1786] 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.
[1787] 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).
[1788] 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.
[1789] 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.
[1790] 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).
[1791] 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.
[1792] 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.
[1793] 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.
[1794] 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.
[1795] 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.
[1796] 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.
[1797] 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."
[1798] ---
[1799] The shared TODO list "Everyone's TODO List" of the present invention is implemented through the following operations.
[1800] Server Operation
[1801] Managing Databases
[1802] The server stores task-related information in a database and provides a means to search for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and past results. The server stores the data of new tasks it receives and uses it to search for similar tasks.
[1803] Use of AI models
[1804] The server uses an AI model to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, it references data from similar past tasks to calculate the optimal priority and recommended deadline.
[1805] Monitoring progress
[1806] The server monitors the progress data collected in real time, predicts potential risks, and provides a means to generate warning messages for ongoing tasks and notify users by comparing them with past data.
[1807] Notifications and collaboration
[1808] The server sends progress and warnings to the terminal, notifying the user in real time. It also sends and receives data quickly to and from the terminal to maintain data integrity.
[1809] Device behavior
[1810] Adding and editing tasks
[1811] When a user adds a new task, the device provides an interface for entering the task details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI. The user can then review the recommended settings and modify or confirm them as necessary.
[1812] Displaying Information
[1813] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[1814] Real-time updates
[1815] When a user adds or edits a task, the device sends the data to the server and receives updated data from the server, allowing the entire task management system to always be kept up to date.
[1816] User operations
[1817] Creating a Task
[1818] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[1819] Review the recommended settings
[1820] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, high priority), adjusts them as necessary, and then confirms the task settings.
[1821] Monitoring progress
[1822] Users can view the progress of their current tasks and the entire project on their device, and can readjust task priorities and schedules based on progress data and warning messages displayed on their device.
[1823] Information Sharing
[1824] Even if a new member joins the team while a task is in progress, users can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[1825] Specific examples
[1826] Example 1: Adding a new task
[1827] When a user enters "Create a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then review and adopt the recommended settings and confirm the task.
[1828] Example 2: Checking and adjusting progress
[1829] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[1830] Through these operations, "Everyone's TODO List" supports efficient project management and progress, improving the productivity of the entire team.
[1831] The processing flow will be explained below.
[1832] Adding a new task
[1833] Step 1:
[1834] The user logs in to the terminal and opens the input screen for a new task.
[1835] Step 2:
[1836] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[1837] Step 3:
[1838] The user clicks the Add Task button.
[1839] Step 4:
[1840] The terminal receives the user's input data and creates a request to the server to add a task.
[1841] Step 5:
[1842] The device sends a request to the server.
[1843] Step 6:
[1844] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[1845] Step 7:
[1846] The server searches the database for similar past tasks.
[1847] Step 8:
[1848] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[1849] Step 9:
[1850] The server returns the calculation results (priority and deadline) to the terminal.
[1851] Step 10:
[1852] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[1853] Step 11:
[1854] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[1855] Step 12:
[1856] The user clicks the confirm button for the task.
[1857] Step 13:
[1858] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[1859] Step 14:
[1860] The device sends a request to the server.
[1861] Step 15:
[1862] The server receives the request and saves the confirmed task information in the database.
[1863] Step 16:
[1864] The server notifies other members of the project team of the task confirmation.
[1865] Checking and adjusting progress
[1866] Step 1:
[1867] The user opens the progress check screen on their device.
[1868] Step 2:
[1869] The device makes a request to the server for current progress data.
[1870] Step 3:
[1871] The device sends a request to the server.
[1872] Step 4:
[1873] A server receives the request and collects historical progress and real-time data from a database.
[1874] Step 5:
[1875] The server uses AI models to compare past progress and detect potential risks or overloads.
[1876] Step 6:
[1877] The server generates a warning message based on the detection results.
[1878] Step 7:
[1879] The server sends up-to-date progress data and warning messages back to the terminal.
[1880] Step 8:
[1881] The terminal receives the returned data from the server and displays it to the user.
[1882] Step 9:
[1883] The user sees progress data and warning messages.
[1884] Step 10:
[1885] Users can reschedule or adjust the priority of tasks as needed.
[1886] Step 11:
[1887] The user confirms the adjustments and enters them into the terminal.
[1888] Step 12:
[1889] The device makes a request to the server to send the adjustments.
[1890] Step 13:
[1891] The device sends a request to the server.
[1892] Step 14:
[1893] The server receives the request and updates the database with the adjustments.
[1894] Step 15:
[1895] The server will notify other team members of any adjustments as needed.
[1896] The above are the specific processing steps in the "Everyone's TODO List" system program.
[1897] Example 1
[1898] 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."
[1899] In modern project management, it is important to prioritize tasks, set deadlines, and monitor progress, but there is a lack of systems to efficiently perform these tasks. Furthermore, there is no established method for appropriately setting new tasks using data from similar past tasks. This results in a lack of ability to predict risks and reschedule tasks during the project, which can result in project delays or failure. Furthermore, real-time information sharing is difficult, so an effective system to improve the productivity of the entire team is needed.
[1900] 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.
[1901] In this invention, the server includes a means for searching for similar tasks from past data, a means for calculating the priority and deadline of a new task based on the data of similar tasks, and a means for calculating recommended settings using an AI model and providing them to the user. This makes it possible to recommend optimal priorities and deadlines when adding a new task, and also to monitor progress and warn of potential risks in real time.
[1902] The "means of searching for similar tasks from past data" is a function that searches for tasks that have elements similar to a new task based on existing task information stored in a database.
[1903] The "means for calculating the priority and deadline of a new task based on data on similar tasks" is a function that analyzes information on similar tasks that have been completed in the past and calculates the optimal priority and recommended deadline for a newly added task.
[1904] The "means for displaying the calculated priority and deadline to the user" is a function for presenting the calculated priority and deadline of the new task to the user through the user interface of the terminal.
[1905] The "means for saving tasks added or adjusted by the user to the database" is a function for recording task information newly added or modified by the user in the database.
[1906] "Means to monitor the progress of saved tasks and warn of potential risks" is a function that checks the progress in real time based on task information saved in a database and issues a warning to the user if delays or risks are detected.
[1907] The "means for notifying the terminal of the progress status and warnings" is a function for sending the status of the ongoing task and warning messages to the terminal to notify the user.
[1908] The "means for transmitting and receiving data between the terminal and the server" is a function for communicating task-related data bidirectionally between the terminal and the server, and constantly synchronizing the latest information.
[1909] "Means of calculating recommended settings using an AI model and providing them to the user" refers to a function that uses an artificial intelligence model to calculate optimal task settings (priority and deadline) based on past data and presents them to the user.
[1910] The shared TODO list "Everyone's TODO List" of the present invention is a system for efficiently managing tasks through collaboration between a cloud server and user terminals. This system includes the following elements:
[1911] Server Operation
[1912] Managing Databases
[1913] The server manages task-related information using a database such as PostgreSQL. Task details (e.g., task name, deadline, priority, progress, and past results) are stored in the database. The server uses this data to search for similar past tasks and provides them as reference data when creating new tasks.
[1914] Use of AI models
[1915] The server uses a generative AI model such as TensorFlow to calculate the priority and deadline of new tasks based on past data. Specifically, when a new task is added, the AI model references data from similar past tasks to calculate the optimal priority and recommended deadline. This recommended setting is then sent from the server to the device.
[1916] Progress monitoring and notification
[1917] The server monitors the progress of tasks in real time and provides a means to predict potential risks. By comparing past data with current progress, the server generates a warning message and sends it to the terminal if there is a possibility of delays or problems in the ongoing task.
[1918] Device behavior
[1919] Adding and editing tasks
[1920] When a user adds a new task, the device (e.g., a smartphone or PC) provides an interface for inputting the task details, deadline, priority, etc. The information entered by the user is sent to the server as an HTTP POST request.
[1921] Displaying Information
[1922] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc. The user can efficiently manage tasks based on the displayed information.
[1923] Real-time updates
[1924] When a task is added or edited by the user, the device sends the data to the server and receives updated data from the server, ensuring that the entire task management system is always kept up to date.
[1925] User operations
[1926] Creating a Task
[1927] A user logs in to a terminal and creates a new task. For example, when a user adds a task called "writing a report," the user inputs the task's content, deadline, and priority into the terminal.
[1928] Review the recommended settings
[1929] The user checks the AI's recommended settings displayed on the device (e.g., deadline in 2 days, priority high), adjusts them as necessary, and then confirms the task settings.
[1930] Monitor and adjust progress
[1931] Users can view the progress of their current tasks and the entire project on their device, and adjust task priorities and schedules based on progress data and warning messages displayed on their device.
[1932] Specific examples
[1933] Example 1: Adding a new task
[1934] When a user enters "Write a report" as a new task on their device, the device sends this information to the server via an HTTP POST request. The server stores the task information in a database and uses an AI model to calculate the optimal priority of "High" and deadline of "2 days later." The server then sends the recommended settings back to the device, and the user can review and adopt the recommended settings to confirm the task.
[1935] Example 2: Checking and adjusting progress
[1936] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the progress data from the database and sends a response back to the device. The user can view the progress and, if any warnings are displayed, reschedule or adjust the priority of tasks to work more efficiently.
[1937] Prompt Sentence Examples
[1938] "Please add the following new task: Create meeting materials. Due next Friday. High priority."
[1939] Through the above-described operations, the "Everyone's TODO List" system can support efficient project management and progress, improving the productivity of the entire team.
[1940] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1941] Step 1:
[1942] The user enters a new task.
[1943] A user logs into a device and uses an interface to enter details such as the task name, due date, and priority. Specifically, the user adds a task called "Write Report" and sets its due date to "May 20th" and priority to "High." The entered data is sent to the server as an HTTP POST request.
[1944] Input: Task name, due date, and priority entered by the user.
[1945] Output: The HTTP POST request sent to the server.
[1946] Step 2:
[1947] The terminal sends the input information to the server.
[1948] The device packages the task information entered by the user into an HTTP POST request and sends it to the server, including details such as the task name, deadline, and priority.
[1949] Input: Task data entered by the user.
[1950] Output: The HTTP POST request that arrives at the server.
[1951] Step 3:
[1952] The server stores the input information in a database.
[1953] The server saves the received task information in a database (e.g., PostgreSQL). Specifically, it creates a new record and stores the task name, deadline, priority, user ID, etc.
[1954] Input: Task data included in the HTTP POST request.
[1955] Output: New task information is saved in the database.
[1956] Step 4:
[1957] The server uses an AI model to calculate recommended settings.
[1958] The server uses generative AI models such as TensorFlow to analyze past task data and recalculate the priority and deadline for new tasks. It also references data from past similar tasks to calculate optimal settings.
[1959] Input: Task data saved in Step 3 and similar past task data.
[1960] Output: The calculated recommended priority and due date.
[1961] Step 5:
[1962] The server sends the recommended settings back to the device.
[1963] The server sends the calculated recommended settings back to the device as a response, which includes the priority and deadline of the recommended task.
[1964] Input: The calculated recommendation priority and due date.
[1965] Output: A response containing the recommended configuration.
[1966] Step 6:
[1967] The device displays recommended settings to the user.
[1968] The device presents the recommended settings received from the server in a user interface, where the user can review the information displayed, including the task name, recommended deadline, and recommended priority.
[1969] Input: The recommended settings received from the server.
[1970] Output: The recommended settings displayed in the user interface.
[1971] Step 7:
[1972] The user reviews the recommended settings and corrects them as needed.
[1973] The user can check the AI's recommended settings displayed on the device and make adjustments as necessary. After adjustments are made, the user confirms the task settings.
[1974] Inputs: Recommended settings and user modifications.
[1975] Output: The finalized task settings.
[1976] Step 8:
[1977] The user confirms the task settings.
[1978] The user reviews the recommended settings, adjusts them as necessary, and then clicks the "Confirm" button to confirm the task.
[1979] Input: The modified or confirmed task settings.
[1980] Output: Commit operation completed.
[1981] Step 9:
[1982] The terminal transmits the confirmation information to the server.
[1983] The device sends the confirmed task information to the server again as an HTTP POST request, which includes the details of the finalized task.
[1984] Input: Confirmed task information.
[1985] Output: The HTTP POST request sent to the server.
[1986] Step 10:
[1987] The server monitors the progress and generates notifications as needed.
[1988] The server monitors the progress of tasks stored in the database and predicts potential risks. If progress is slower than in the past or deadlines are approaching, a warning message is generated and sent to the device.
[1989] Input: Task progress data stored in the database.
[1990] Output: Generates and sends warning messages to the terminal.
[1991] The above is the specific program processing flow of the "Everyone's TODO List" system.
[1992] (Application example 1)
[1993] 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."
[1994] Conventional task management systems are often shared by a single user or multiple users, making them unsuitable for factories where multiple robots work together. They also lack the functionality to monitor progress in real time and provide early notification of potential risks. This can lead to a decline in overall factory productivity, making it difficult to create an efficient work environment.
[1995] 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.
[1996] In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the agent of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for robots in the factory to autonomously share and adjust tasks and improve productivity. This enables multiple robots in the factory to efficiently cooperate and monitor and adjust the progress of tasks in real time.
[1997] "Past data" refers to information such as previously entered tasks, progress, and results.
[1998] "Means for searching for similar tasks" refers to algorithms or programs for finding tasks that are highly similar to the current task from past task data.
[1999] The "means for calculating the priority and deadline of a new task" refers to an algorithm or program for evaluating the importance and urgency of a newly added task and setting an appropriate deadline.
[2000] "Means for displaying to the user" refers to a display device or interface for providing the user with information such as the calculated priority and deadline.
[2001] "Means for saving tasks to a database" refers to a program or system for registering and managing tasks added or adjusted by a user in a database.
[2002] "Progress monitoring means" means a program or system used to track and monitor the progress or status of a task in real time.
[2003] "Means for warning of potential risks" refers to programs or systems that predict and issue warnings about problems or delays that may occur in the progress of a task.
[2004] "Means for notifying agents of progress and warnings" refers to a program or system for notifying a robot or other execution device of information regarding the progress and risks of a task.
[2005] "Means for transmitting and receiving data between the terminal and the server" refers to a communication means for bidirectionally exchanging task information and progress status data between the user's terminal and the central server.
[2006] "Means for factory robots to autonomously share and coordinate tasks to improve productivity" refers to algorithms and systems that enable multiple robots in a factory to cooperate with each other, share or coordinate tasks, and work efficiently.
[2007] The present invention is a shared TODO list system for improving the efficiency of collaborative work among robots in a factory, and is implemented with the following configuration.
[2008] Server Operation
[2009] Managing Databases
[2010] The server stores and manages past task data and progress data in a MySQL database, including task details, deadlines, priorities, progress, and past results. When a new task is added, the server adds that information to the database and uses it to search for similar tasks.
[2011] Use of AI models
[2012] The server uses AI models trained with machine learning libraries such as Scikit-learn and TensorFlow in Python. When a new task is added, the server calculates the optimal priority and recommended deadline based on past data. For example, if "assembly of part X" was added in the past, the server estimates the priority and deadline for "assembly of part Y" based on that information.
[2013] Monitoring progress
[2014] The server monitors the progress data collected by Apache Kafka in real time, and if an anomaly is detected when comparing it with past data, it predicts potential risks and alerts the agent.
[2015] Notifications and collaboration
[2016] The server notifies the robot of progress and warnings in real time, and transmits and receives data quickly to maintain data integrity, communicating via the factory's wireless network.
[2017] Device behavior
[2018] Adding and editing tasks
[2019] Users input new tasks through the robot's touchscreen display or a management terminal, and this information is sent to a server, which sends back recommendations (deadlines and priorities) based on the AI model.
[2020] Displaying Information
[2021] The device displays the recommended settings and progress data received from the server to the user, including task priority, deadline, progress, warning messages, etc., allowing users to manage tasks efficiently.
[2022] Real-time updates
[2023] When a user adds or edits a task, the device sends the data to the server and receives the updated information, ensuring that all task information is kept up to date.
[2024] User operations
[2025] Creating a Task
[2026] A user logs in to the factory system, creates a new task, for example, "assembly of part Y," and sends the information to the server.
[2027] Review the recommended settings
[2028] Check the recommended settings returned by the server (e.g., deadline: December 15, 2023, priority: High) and adjust them as necessary. Then, finalize the task settings.
[2029] Monitoring progress
[2030] Users monitor the progress of their current tasks and the overall project on their devices, and can reschedule or adjust priorities based on progress data and warning messages displayed on their devices.
[2031] Information Sharing
[2032] When new tasks are added or new members join, they can refer to information and knowledge about past tasks, allowing for a smooth handover of work.
[2033] Specific examples
[2034] Example 1: Adding a new task
[2035] When a new task, "Assemble part Y," is added, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and sends the results back to the device. The user can then confirm and adopt these recommended settings and finalize the task.
[2036] Example 2: Checking and adjusting progress
[2037] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data from the server. The server collects the data and returns progress and warning messages to the device. The user can reschedule or adjust the priority of tasks based on the displayed information to continue working efficiently.
[2038] Prompt Sentence Examples
[2039] Input: "New task added. Task name: Assemble part Y. Please refer to past data on similar tasks to estimate the optimal deadline and priority."
[2040] Output: "Estimated due date: December 15, 2023, Estimated priority: High"
[2041] With the above configuration, the "Shared TODO List System for Factory Robots" enables multiple robots within a factory to work together efficiently and manage tasks in real time.
[2042] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[2043] Step 1:
[2044] To create a new task, the user enters the task details, deadline, priority, etc. into the device interface, and this data is sent to the server in JSON format.
[2045] (Input) Task information entered by the user (task content, deadline, priority).
[2046] (Data processing) The terminal converts the input data into JSON format.
[2047] (Output) The new task data in JSON format.
[2048] Step 2:
[2049] The server temporarily stores the received task data in a database, searches for similar past tasks using a generative AI model, and calculates the optimal priority and recommended deadline using a Python AI library.
[2050] (Input) New task data in JSON format.
[2051] (Data Computing) Priority and deadline estimation using AI models.
[2052] (Output) Estimated priority and recommended due date.
[2053] Step 3:
[2054] The server sends the estimated results to the device, which displays them to the user, who can then review the recommended settings and make any necessary adjustments.
[2055] (Input) Estimated priority and recommended due date.
[2056] (Data processing) The terminal converts the estimated results into a display format.
[2057] (Output) The displayed estimation result.
[2058] Step 4:
[2059] After the user checks and adjusts the recommended settings, the finalized task information is sent to the server, which then officially stores the task information in the database.
[2060] (Input) Task information adjusted by the user.
[2061] (Data processing) The terminal converts the adjusted task information into JSON format.
[2062] (Data storage) The server stores task information in a database.
[2063] (Output) Task information stored in the database.
[2064] Step 5:
[2065] The server monitors the progress in real time, collects and stores the progress data, and uses Apache Kafka to process the progress data and generate alerts if an anomaly is detected.
[2066] (Input) Progress data.
[2067] (Data calculation) Detection of abnormalities in progress data.
[2068] (Output) The warning message.
[2069] Step 6:
[2070] The server generates a warning message and sends it to the terminal, which notifies the agent. The terminal then displays the message to the user, urging them to take notice.
[2071] (Input) The warning message.
[2072] (Data processing) The terminal converts the message into a display format.
[2073] (Output) The displayed warning message.
[2074] Step 7:
[2075] The device receives progress data and alert messages and displays them to the user, who can then view the progress and reschedule or adjust the priority of the task.
[2076] (Input) Progress data and warning messages.
[2077] (Data processing) The terminal converts progress data and warning messages into a display format.
[2078] (Output) Progress data and warning messages displayed.
[2079] Step 8:
[2080] The robots in the factory coordinate their work with each other and carry out tasks autonomously based on instructions from the agent. The robots communicate with each other using built-in wireless communication modules.
[2081] (Input) Task instructions from the agent.
[2082] (Data calculation) The robot analyzes the instructions and converts them into work procedures.
[2083] (Output) Specific task execution by the robot.
[2084] 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.
[2085] ---
[2086] The shared TODO list "Everyone's TODO List" of the present invention is combined with an emotion engine to realize task management based on the user's emotions. The operation of the entire system of the present invention will be described below.
[2087] Server Operation
[2088] Managing Databases
[2089] The server stores information about tasks and emotions in a database and searches for similar tasks from past data. This data includes task content, deadlines, priorities, progress, and emotional data. New task data is temporarily stored on the server, and then the emotional engine adds the user's emotional information.
[2090] Use of AI models
[2091] The server runs an AI model based on historical and emotional data to calculate optimal priorities and deadlines for new tasks, and uses an emotion engine to automatically adjust these settings based on the user's emotions.
[2092] Monitoring progress
[2093] The server monitors the progress data and user emotional data collected in real time, predicting and warning about stress levels and potential risks. By comparing the data with past data, if an abnormality is detected, a warning message is generated and notified to the user.
[2094] Notifications and collaboration
[2095] The server sends progress and emotional changes to the device and notifies the user in real time. This allows the user to understand how their emotional state affects the task and respond appropriately. Furthermore, data is sent and received quickly to and from the device to maintain data integrity.
[2096] Device behavior
[2097] Adding and editing tasks
[2098] When a user adds a new task, the device provides an interface for inputting the task's details, deadline, priority, etc. The information entered by the user is sent to the server, which returns recommended settings based on the AI and emotion engine. The user can then review, modify, and confirm these recommended settings.
[2099] Emotion recognition
[2100] The device is equipped with an emotion engine that recognizes emotions from the user's facial expressions, voice, text, etc. The recognized emotion data is sent to a server and used as a reference for task management.
[2101] Displaying Information
[2102] The device receives recommended settings, progress data, and emotional state information from the server and displays it to the user, allowing the user to adjust task priorities and deadlines and manage tasks efficiently.
[2103] User operations
[2104] Creating a Task
[2105] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user inputs the task's content, deadline, and priority.
[2106] Emotion input
[2107] While the user is using the device, the emotion engine recognizes the user's emotions in real time using facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine will capture that information.
[2108] Review the recommended settings
[2109] The user checks the recommended settings of the AI and emotion engine displayed on the device (for example, gradual deadline extension or priority adjustment according to the emotional state), makes any necessary adjustments, and then finalizes the task settings.
[2110] Monitoring progress
[2111] Users can view the progress of their current tasks and the overall project on their device, and can reschedule or adjust priorities for tasks based on progress data and emotion-based alert messages displayed on their device.
[2112] Information Sharing
[2113] Even if a new member joins the team while a task is in progress, the user can refer to information about past tasks and emotions, which allows for a smooth handover of work.
[2114] Specific examples
[2115] Example 1: Adding a new task
[2116] When a user enters "Write a report" as a new task into their device, the device sends this information to the server. The server uses AI to calculate the optimal priority and deadline based on past data and emotional data, and the emotional engine adjusts the settings taking into account the user's current emotional state. The user then reviews and adopts the recommended settings and confirms the task.
[2117] Example 2: Checking and adjusting progress
[2118] When a user opens the progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns warning messages based on the progress and emotional data to the device. The user can then reschedule or adjust priorities of tasks based on the displayed information to continue working efficiently.
[2119] Through the above operations, "Everyone's TODO List" supports efficient management and progress of projects, and improves productivity by adjusting tasks based on the user's emotions.
[2120] The processing flow will be explained below.
[2121] Adding new tasks and reflecting emotions
[2122] Step 1:
[2123] The user logs in to the terminal and opens the input screen for a new task.
[2124] Step 2:
[2125] The user inputs the details of the new task "Report Creation" and the initial settings (e.g., deadline in 3 days, priority medium).
[2126] Step 3:
[2127] The user clicks the Add Task button.
[2128] Step 4:
[2129] The terminal receives the user's input data and creates a request to the server to add a task.
[2130] Step 5:
[2131] The device sends a request to the server.
[2132] Step 6:
[2133] The server receives the request and temporarily saves the entered task details and initial settings in a database.
[2134] Step 7:
[2135] The server searches the database for similar past tasks.
[2136] Step 8:
[2137] The server uses AI models to calculate optimal priorities and deadlines for new tasks based on past data.
[2138] Step 9:
[2139] The device analyzes the user's facial expressions and voice using an emotion engine to recognize their current emotions.
[2140] Step 10:
[2141] The device transmits the recognized emotion data to the server.
[2142] Step 11:
[2143] The server receives the emotion data and adjusts the calculation results of the AI model based on the emotion data.
[2144] Step 12:
[2145] The server returns recommended settings (priority and deadline) adjusted based on the emotion to the device.
[2146] Step 13:
[2147] The terminal receives the returned data from the server and displays the recommended priority and deadline to the user.
[2148] Step 14:
[2149] The user reviews the recommendations and adjusts deadlines and priorities as needed.
[2150] Step 15:
[2151] The user clicks the confirm button for the task.
[2152] Step 16:
[2153] The terminal receives the user's confirmed settings and makes a request to the server to send the confirmed information.
[2154] Step 17:
[2155] The device sends a request to the server.
[2156] Step 18:
[2157] The server receives the request and saves the confirmed task information in the database.
[2158] Step 19:
[2159] The server notifies other members of the project team of the task confirmation.
[2160] Checking progress and reflecting on emotions
[2161] Step 1:
[2162] The user opens the progress check screen on their device.
[2163] Step 2:
[2164] The device makes a request to the server for current progress data and latest emotion data.
[2165] Step 3:
[2166] The device sends a request to the server.
[2167] Step 4:
[2168] The server receives the request and collects historical progress and real-time data from a database.
[2169] Step 5:
[2170] The server analyzes progress data in real time based on emotion data to detect potential risks and overloads.
[2171] Step 6:
[2172] The server generates a warning message based on the detection results and adjusts the content of the warning based on the user's stress level.
[2173] Step 7:
[2174] The server sends back to the terminal a warning message based on the latest progress data and emotions.
[2175] Step 8:
[2176] The terminal receives the returned data from the server and displays it to the user.
[2177] Step 9:
[2178] The user sees progress data and warning messages.
[2179] Step 10:
[2180] Users can reschedule or adjust the priority of tasks as needed.
[2181] Step 11:
[2182] The user confirms the adjustments and enters them into the terminal.
[2183] Step 12:
[2184] The device makes a request to the server to send the adjustments.
[2185] Step 13:
[2186] The device sends a request to the server.
[2187] Step 14:
[2188] The server receives the request and updates the database with the adjustments.
[2189] Step 15:
[2190] The server will notify other team members of any adjustments as needed.
[2191] The above are the specific processing steps when combining an emotion engine with the "Everyone's TODO List" system.
[2192] Example 2
[2193] 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."
[2194] While conventional task management systems are capable of managing task progress and priorities, they have the problem of being unable to manage tasks taking into account the user's emotional state. This can lead to inappropriate task adjustments being made when the user feels stressed or fatigued, hindering efficient work. Furthermore, the lack of recommended task settings and warning functions based on the user's emotions also creates the problem of being unable to optimize task progress.
[2195] The identification process by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a data storage device, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, means for acquiring user emotional data and reflecting it in task management, means for analyzing the user's emotional state using an emotion engine, and means for calculating optimal task settings taking the emotional data into account using an AI model. This enables task management that takes the user's emotional state into account, thereby realizing efficient and optimal task management while reducing user stress and fatigue.
[2196] A "similar task" is a task that has the same or very similar content as another task that has been performed in the past.
[2197] "Priority" is an indicator that indicates the order of execution and importance of tasks.
[2198] A "deadline" is the final time or date by which a task must be completed.
[2199] A "data storage device" is a device or means for long-term storage of information.
[2200] "Emotion data" refers to data that indicates the user's emotional state, obtained through facial recognition, voice analysis, text analysis, etc.
[2201] An "emotion engine" is software or hardware that analyzes the user's emotions and reflects the results throughout the system.
[2202] An "AI model" is a computational model that uses artificial intelligence to calculate optimal task settings based on past data and emotional data.
[2203] "Recommended settings" are the optimal priority and deadline settings for task execution calculated by the AI model.
[2204] A "potential risk" is a danger or problem that you want to avoid in advance in the ongoing task.
[2205] "Notification" refers to the act of conveying specific information from the system to the user.
[2206] The above are the definitions of important words included in the patent claims for the "Everyone's TODO List" system. ---
[2207] (Mode for carrying out the invention)
[2208] The present invention relates to a "To-Do List for Everyone" system that uses emotional information of users to manage tasks. The operation of the entire system of the present invention will be described below.
[2209] Server Operation
[2210] The server receives task information entered by the user and stores it in a database. The server searches for similar tasks and calculates the priority and deadline of new tasks based on past data. In this process, it uses an emotion engine to obtain the user's emotional data and uses a generative AI model to calculate recommended settings that take the emotional data into account.
[2211] Specifically, the emotion engine deployed on the server analyzes the user's emotional data in real time using technologies such as facial recognition, voice analysis, and text analysis. This allows the user's stress level, fatigue level, etc. The AI model takes this emotional data into account and calculates recommended settings for new tasks based on past task data.
[2212] For example, if a task called "Write a report" is added, the server will search past data and make recommendations based on the average priority and time required for "Write a report." At the same time, if the user's emotional state indicates stress, the server can extend the deadline a little or set the priority lower.
[2213] Device behavior
[2214] The device provides an interface that allows users to add and edit tasks. When a user adds a new task, the device sends the information to the server. When the server returns recommended settings, the device displays them to the user and provides an interface for the user to review, modify, and confirm the settings.
[2215] The device is also equipped with an emotion engine that recognizes emotional data from the user's facial expressions and voice. This allows emotional data to be acquired not only when the task is entered, but also while the task is being performed, and is sent to the server in real time.
[2216] For example, if a user adds a task called "Write a report" and enters its content, due date, and priority, the device will send information such as "Content: Write report," "Deadline: 3 days later," and "Priority: High" to the server. The server will then return recommended settings, suggesting "Priority: Medium" and "Deadline: 5 days later." The user can then review these settings, make any necessary changes, and confirm them.
[2217] User operations
[2218] A user logs in to a terminal and creates a new task. For example, when adding a task called "Write a report," the user enters the task's content, deadline, and priority. The terminal sends this information to the server, which then returns recommended settings. The user then confirms and adopts the recommended settings and confirms the task.
[2219] While the user is using the device, the emotion engine recognizes the user's emotions in real time through facial recognition and voice analysis. For example, if the user is feeling stressed, the emotion engine captures that information and sends it to the server.
[2220] For example, when a user opens a progress check screen while a project is in progress, the device requests the latest progress data and the user's emotional data from the server. The server collects the data and returns a warning message based on the progress and emotional data to the device. The user can reschedule or adjust the priority of tasks based on the displayed information and continue working efficiently.
[2221] Prompt Sentence Examples
[2222] "Please determine the priority of the new task. The task is 'Write a report', the deadline is '3 days from now', and the current emotional state is 'Stressed'."
[2223] "Predict risks to the entire project based on current progress and generate warning messages."
[2224] Through the above operations, "Everyone's TODO List" can realize task management that takes into account the user's emotional state, and support efficient and optimal task progress.
[2225] ---
[2226] The flow of the identification process in the second embodiment will be described with reference to FIG. 13.
[2227] Step 1:
[2228] The user enters the task into the terminal
[2229] Users access the device interface to add new tasks, entering information such as the task's content, deadline, and priority.
[2230] Input: Task details, deadline, priority
[2231] Output: Task information is sent to the terminal
[2232] Specific behavior: A user adds a task called "Write a report" and enters a due date of "3 days later" and a priority of "High."
[2233] Step 2:
[2234] The device sends task information to the server
[2235] The terminal transmits the task information input by the user to the server.
[2236] Input: Task information entered by the user
[2237] Output: Task data sent to the server
[2238] Specific operation: The device sends the data "Create report", "3 days later", and "High" to the server.
[2239] Step 3:
[2240] The server temporarily stores task information in a database
[2241] The server temporarily stores the received task information in a database.
[2242] Input: Task information sent from the terminal
[2243] Output: Task information stored in the database
[2244] Specific behavior: The server adds new task information to the "report_tasks" table.
[2245] Step 4:
[2246] The server obtains the user's emotional information using an emotion engine.
[2247] The server uses an emotion engine to obtain the user's current emotion information.
[2248] Input: Real-time user session data
[2249] Output: Parsed emotion data
[2250] Specific behavior: The emotion engine analyzes that "the user is currently feeling stressed."
[2251] Step 5:
[2252] The server uses generative AI models to calculate recommended settings.
[2253] The server uses a generative AI model based on past data and acquired emotional information to calculate the optimal priority and deadline for new tasks.
[2254] Input: Past task data and emotion data from the database
[2255] Output: Recommended settings (priority and deadline)
[2256] Specific operation: The server uses an AI model to calculate that "the recommended priority for this task is medium, and the recommended deadline is 5 days later."
[2257] Step 6:
[2258] The server sends the recommended settings to the device.
[2259] The server sends the calculated recommended settings to the device.
[2260] Input: Recommended settings calculated by the AI model
[2261] Output: Recommended settings sent to the device
[2262] Specific operation: The server sends the recommended settings of "Medium" and "After 5 days" to the device.
[2263] Step 7:
[2264] The device displays recommended settings to the user
[2265] The device will then display the recommended settings to the user, who can then finalize the task.
[2266] Input: Recommended settings received from the server
[2267] Output: Recommended settings displayed to the user
[2268] Specific behavior: The device displays "Create report - Priority: Medium - Deadline: 5 days later."
[2269] Step 8:
[2270] The user confirms, modifies, and confirms the recommended settings
[2271] The user reviews the recommended settings, makes corrections if necessary, and finally confirms the task.
[2272] Enter the recommended settings shown on your device.
[2273] Output: The confirmed task settings are sent to the server.
[2274] Specific behavior: The user changes the recommended settings to "High" and "After 4 days" and confirms.
[2275] Step 9:
[2276] The server monitors progress and emotion data in real time.
[2277] The server monitors progress and emotional data in real time, providing alerts and adjustments as needed.
[2278] Input: User progress data, real-time emotion data
[2279] Output: Warning message when an abnormality is detected
[2280] How it works: The server updates the user's progress and emotion data every minute and detects anomalies.
[2281] Step 10:
[2282] If the server detects an abnormality, it generates and sends a warning message.
[2283] If the server detects an abnormality, it immediately generates a warning message and sends it to the user.
[2284] Input: Progress data, emotion data
[2285] Output: The warning message sent to the user.
[2286] Specific behavior: The server detects that progress is behind schedule and notifies the user that the report creation is behind schedule.
[2287] Step 11:
[2288] Users can check the progress and reschedule if necessary
[2289] The user can check the progress on their device and reschedule or re-prioritize tasks as needed.
[2290] Input: Progress and warning messages displayed on the terminal
[2291] Output: Reconfigured task information
[2292] Specific behavior: The user checks the progress and resets the deadline for "Write report."
[2293] ---
[2294] The above is a detailed explanation of the processing steps of the "Everyone's TODO List" system.
[2295] (Application example 2)
[2296] 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."
[2297] Task management systems are useful in many situations for efficient work planning and progress management, but they lack functions such as schedule adjustment and task priority setting that take into account the user's emotional state. This often leads to users feeling stressed or overwhelmed, resulting in reduced work efficiency. In particular, in factory work sites, there is a need to monitor the emotions and stress of workers and manage tasks appropriately, but conventional systems are unable to adequately achieve this.
[2298] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for searching for similar tasks from past data, means for calculating the priority and deadline of a new task based on the data of similar tasks, means for displaying the calculated priority and deadline to the user, means for saving tasks added or adjusted by the user in a database, means for monitoring the progress of the saved tasks and warning of potential risks, means for notifying the user of the progress and warnings, means for sending and receiving data between the terminal and the server, and means for recognizing emotions in real time and adjusting the priority and deadline of tasks. This enables task management and schedule adjustment that takes the user's emotional state into consideration, thereby improving work efficiency and reducing stress.
[2299] "Past data" refers to previously recorded task information and emotional data.
[2300] "Similar tasks" refer to past tasks that have similar content, purpose, or conditions to the current task.
[2301] "Emotion recognition" refers to the act of identifying a user's current emotional state from their facial expressions, voice, writing, etc.
[2302] "Priority" refers to an indicator that indicates the order in which tasks are executed based on the urgency or importance of the task.
[2303] A "deadline" refers to the date and time by which a task should be completed.
[2304] "Adding and adjusting tasks" refers to the act of a user entering a new task into the system or modifying the content, deadline, or priority of an existing task.
[2305] A "database" refers to a collection of data for organizing and storing information.
[2306] "Progress" refers to information that indicates how far a task has progressed and what progress remains to be completed.
[2307] "Potential risks" refer to problems or obstacles that may arise during the course of a task.
[2308] "Warning" refers to a notification intended to inform the user of a potential risk or delay in progress.
[2309] "Terminal" refers to a device (e.g., computer, smartphone) that a user uses to operate the task management system.
[2310] "Server" refers to a central computer that processes and stores data sent from terminals.
[2311] "Sending and receiving data" refers to the act of transferring information between a terminal and a server.
[2312] "Display" refers to the act of visually showing information on a device screen.
[2313] "Real-time" refers to processing and display occurring immediately without delay.
[2314] A specific system program and embodiment for applying the present invention to a factory robot will be described.
[2315] Server Roles
[2316] The server implements the following functions:
[2317] 1. Search for similar tasks: The server searches for similar tasks from past data.
[2318] 2. Calculating priority and deadline for new tasks: Using data from similar tasks, an AI model is used to calculate the optimal priority and deadline for new tasks.
[2319] 3. Display to user: The calculated priority and deadline are displayed to the user in real time.
[2320] 4. Save task: Save the task added and adjusted by the user to the database.
[2321] 5. Progress monitoring and alerts: Monitor the progress of saved tasks and alert you to potential risks.
[2322] 6. Sending and receiving data: Sending and receiving data between the terminal and the server.
[2323] 7. Emotion Recognition: Adjust task priorities and deadlines using an emotion recognition engine.
[2324] Device Role
[2325] The terminal implements the following functions:
[2326] 1. Adding and editing tasks: Provides an interface for users to add and edit new tasks.
[2327] 2. Displaying information: Displaying information received from the server to the user, such as task priority, deadline, progress, warnings, and emotional state.
[2328] 3. Emotion recognition: The built-in camera and microphone are used to recognize the user's emotions in real time and send the data to the server.
[2329] User operations
[2330] A user uses the system in the following steps:
[2331] 1. Create a task: Create a new task and enter its content, due date, and priority.
[2332] 2. Emotion input: Emotions are automatically recognized through the built-in camera and microphone during use.
[2333] 3. Review the recommended settings: Review the recommended settings based on AI and emotions sent back from the server and make any necessary adjustments.
[2334] 4. Monitor progress: Check current tasks and overall progress, and reschedule or adjust priorities.
[2335] 5. Responding to warnings: If a warning message appears, check its contents and take the necessary action.
[2336] Hardware and Software Configuration
[2337] Use the following hardware and software:
[2338] Hardware: Cameras and microphones for emotion recognition (e.g., high-performance cameras and microphones), collaborative robots (e.g., general collaborative robots)
[2339] Software: emotion recognition algorithms (e.g., standard emotion recognition APIs), task management software (e.g., custom-built task managers)
[2340] Examples of specific examples and prompts
[2341] Example 1: Adding a task
[2342] When a factory worker adds a new task, "organizing shelves," the emotion engine detects the user's stress and the robot suggests extending the deadline.
[2343] Example prompt:
[2344] Add a new task: "Organize shelves"
[2345] Example 2: Checking and adjusting progress
[2346] The robot monitors the worker's progress and emotions in real time and sends a warning message if the "shelf-organizing" task is about to be delayed.
[2347] Example prompt:
[2348] Check your progress and adjust your schedule as needed
[2349] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2350] Step 1:
[2351] The user adds a new task. The user inputs the task details, deadline, and priority into the terminal. The terminal receives this data and sends it to the server. The input data received is "task details," "deadline," and "priority," and the output data is "data to send to the server."
[2352] Step 2:
[2353] The server searches for similar tasks from past data. The server extracts past records with similar task content from the database and generates search results. It receives "new task data" as input data and generates "similar task data" as output data.
[2354] Step 3:
[2355] The server calculates the priority and deadline of a new task based on data on similar tasks. The server uses a generative AI model to analyze similar task data and determine the optimal priority and deadline. It receives "similar task data" as input data and generates "calculated priority" and "calculated deadline" as output data.
[2356] Step 4:
[2357] The server displays the calculated priority and deadline to the user. The server then sends this data to the terminal, which then visually displays it to the user. The server receives the "calculated priority" and "calculated deadline" as input data and generates "display data" as output data.
[2358] Step 5:
[2359] The device performs emotion recognition. The device uses a built-in camera and microphone to recognize the user's facial expressions and voice in real time and sends the emotion data to the server. It receives "facial expressions" and "voice" as input data and generates "emotion data" as output data.
[2360] Step 6:
[2361] The server adjusts the priority and deadline of the task based on the emotion data. The server receives the emotion data and recalculates the optimization of the priority and deadline based on it. It receives "emotion data" as input data and generates "adjusted priority" and "adjusted deadline" as output data.
[2362] Step 7:
[2363] The server saves the tasks added and adjusted by the user to the database. The server creates a task object with the final priority and deadline and records it in the database. It receives a "task object" as input data and generates a "saved task" as output data.
[2364] Step 8:
[2365] The server monitors the progress of the saved tasks and warns of potential risks. The server tracks the progress of the tasks in real time and generates a warning if there is a risk by comparing it with past data. It receives "current progress data" as input data and generates "warning messages" as output data.
[2366] Step 9:
[2367] The server notifies the progress and warnings. The server sends warning messages to the terminal, which displays them to the user. It receives "warning messages" as input data and generates "notification data" as output data.
[2368] Step 10:
[2369] The terminal displays the final task progress, priority, deadline, and warning messages to the user. It receives "notification data" and "final task data" as input data and generates "display data" as output data.
[2370] 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.
[2371] 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.
[2372] 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.
[2373] 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.
[2374] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[2375] 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.
[2376] 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).
[2377] 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.
[2378] 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."
[2379] 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.
[2380] 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).
[2381] 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.
[2382] 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.
[2383] 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.
[2384] 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.
[2385] 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.
[2386] 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.
[2387] 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.
[2388] 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.
[2389] 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...
Claims
1. A means to search for similar tasks from past data, A means for calculating the priority and deadline of a new task based on data on similar tasks; means for displaying the calculated priority and deadline to a user; A means to store user-added and adjusted tasks in a database; A means to monitor the progress of saved tasks and alert you to potential risks; a means for notifying the player of progress and warnings; means for transmitting and receiving data between the terminal and the server; Task management system including.
2. 2. The task management system according to claim 1, further comprising means for estimating the end time of a new task based on past task data and evaluating the schedule margin.
3. 2. The task management system according to claim 1, further comprising means for presenting to the user success stories and problems of similar tasks in the past, and providing information useful for executing a new task.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A