system
The system automates task identification and WBS generation in project management, addressing inefficiencies and inconsistencies by allowing users to input questions and generating a hierarchical WBS, thereby improving efficiency and accuracy.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-02
- Publication Date
- 2026-04-14
AI Technical Summary
Project management in complex projects is inefficient due to manual task identification and work breakdown structure (WBS) generation, which is time-consuming and prone to errors, and the process of sharing information among stakeholders is complicated, leading to inconsistencies.
A system that automates task identification and WBS generation by allowing users to input questions, with a server generating subsequent questions, collecting answers, organizing tasks into a hierarchical structure, and providing a WBS, thereby improving efficiency and consistency.
This system significantly enhances project management efficiency by automating task identification and WBS generation, reducing the time and effort required, and ensuring accurate and consistent task management.
Smart Images

Figure 2026064658000001_ABST
Abstract
Description
Technical Field
[0001] The technology of this disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance as a response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In project management, task identification and work breakdown structure (WBS) generation are generally performed manually, requiring a great deal of time and effort. Also, as the complexity of a project increases, it becomes difficult to accurately recognize all tasks and manage them efficiently. Furthermore, the process of sharing information among stakeholders while maintaining its consistency is also complicated. Due to such problems, there is a demand to improve the accuracy and efficiency of project management.
Means for Solving the Problems
[0005] The present invention provides a system comprising: means for a user to input a question to the system; means for a server to generate the next question to be asked based on the user's question; means for the server to collect answers from the user and identify tasks based on those answers; means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure; and means for the server to provide the work breakdown structure to the user. This automates task identification and WBS generation in project management, enabling efficient and consistent management. Furthermore, by having the user answer questions sequentially, it becomes possible to comprehensively identify all necessary tasks, thereby increasing the success rate of the project.
[0006] "User" refers to the project manager or related parties who access the system and input and answer questions.
[0007] A "system" refers to a computer-based program and related devices designed for the purpose of identifying tasks necessary for project management and generating a Work Breakdown Structure (WBS) through user interaction.
[0008] A "server" refers to a central processing unit that processes data received from users and performs tasks such as generating questions, saving answers, extracting tasks, and creating a Work Breakdown Structure (WBS).
[0009] A "question" refers to the inquiry presented to the user in order to gather detailed information about the project.
[0010] "Answer" refers to the specific information or data that a user provides in response to a question.
[0011] A "task" refers to a specific work item or activity necessary for the progress of a project.
[0012] A "Work Breakdown Structure (WBS)" refers to a diagram or list that visually represents the entire project in a hierarchical structure, showing each task and its relationships.
[0013] "Collection" refers to the process of gathering and storing user-provided response data in one place.
[0014] "Identifying" refers to the process of identifying and listing the necessary tasks based on user responses.
[0015] A "hierarchical structure" refers to a method of organizing tasks and information in a hierarchical relationship, arranging them in a visually clear and easy-to-understand manner.
[0016] "Providing" refers to the act of sending or displaying the WBS generated by the server to the user in a viewable format. [Brief explanation of the drawing]
[0017] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Embodiment 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Embodiment 2 when the emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when the emotion engine is combined.
Mode for Carrying Out the Invention
[0018] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0019] First, the terms used in the following description will be explained.
[0020] In the following embodiments, a numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0021] In the following embodiments, a numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0022] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0023] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0024] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0025] [First Embodiment]
[0026] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0027] As shown in Figure 1, the 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.
[0028] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0029] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0030] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and 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.
[0031] 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 perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0032] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0033] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0034] As shown in Figure 2, in the data processing device 12, a specific processing 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" related to the technology of this 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 according to the specific processing program 56 executed on the RAM 30.
[0035] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0036] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0037] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0038] System overall configuration and functions
[0039] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[0040] User actions
[0041] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[0042] Terminal operation
[0043] The terminal receives user input and sends it to the server. It then displays the next question returned from the server and the generated WBS to the user.
[0044] Server Processing
[0045] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[0046] Explain the program's processing in natural language.
[0047] 1. Presenting questions and collecting answers:
[0048] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[0049] 2. Generating the next question:
[0050] The server analyzes the user's input and determines the next question to present. This question is then sent back to the terminal and presented to the user.
[0051] 3. Accumulating responses and identifying tasks:
[0052] User responses are accumulated on the server in real time, and once all questions are completed, the server extracts project tasks based on those responses. For example, if the project name is "Creating a Marketing Plan," a kickoff meeting will be generated as a task based on that name.
[0053] 4. Generating the WBS:
[0054] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered and presented in a visually easy-to-understand format.
[0055] 5. Provided by WBS:
[0056] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[0057] Specific example
[0058] Enter the project name and end date:
[0059] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0060] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0061] Task generation:
[0062] The server generates a task called "Marketing plan creation kickoff meeting".
[0063] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[0064] Presentation of WBS results:
[0065] The generated WBS is provided to the user, for example, as follows:
[0066] 1. Kick-off meeting for marketing plan creation
[0067] 2. Submit the final report by December 31, 2023.
[0068] In this way, users can automatically generate a project's WBS simply by inputting information interactively, significantly improving the efficiency of project management.
[0069] The following describes the processing flow.
[0070] Step 1:
[0071] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[0072] Step 2:
[0073] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[0074] Step 3:
[0075] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[0076] Step 4:
[0077] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[0078] Step 5:
[0079] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[0080] Step 6:
[0081] The server selects the next question (e.g., "When is the project start date?") and returns it to the terminal as a response.
[0082] Step 7:
[0083] The terminal presents the user with the next question received from the server. The user enters their answer, and the terminal sends that answer to the server via a POST request.
[0084] Step 8:
[0085] The process from Step 5 to Step 7 is repeated until the user has answered all questions. The server sequentially stores each user's answers in the `user_responses` dictionary.
[0086] Step 9:
[0087] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[0088] Step 10:
[0089] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[0090] Step 11:
[0091] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[0092] Step 12:
[0093] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[0094] This allows users to automatically generate and review a project's WBS (Work Breakdown Structure) while interactively inputting information.
[0095] (Example 1)
[0096] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0097] Traditional project management systems require users to manually define tasks and create work breakdown structures (WBS), which is extremely time-consuming. This leads to decreased project management efficiency and an increased likelihood of missed tasks and errors.
[0098] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0099] In this invention, the server includes means for the user to input answers to questions sequentially displayed to the system; means for the server to generate the next question to be asked based on the user's answers and present it to the user via a terminal; means for the server to collect answers from the user and identify tasks based on them; means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure; and means for the server to provide the work breakdown structure to the user via a terminal. This makes it possible to automatically generate a work breakdown structure without the user having to manually set tasks, significantly improving the efficiency of project management and preventing tasks from being missed or errors made.
[0100] A "user" is the entity that accesses the system and enters answers to questions.
[0101] A "terminal" is a device operated by a user that communicates with a server to exchange questions and answers.
[0102] A "server" is a central processing unit that analyzes user responses, generates the next question, identifies tasks, and creates a Work Breakdown Structure (WBS).
[0103] A "question" is an item generated by the server to collect detailed information about the project from the user and presented to the user via the terminal.
[0104] An "answer" is the information that a user enters in response to a question via their device.
[0105] A "task" is a specific item of work or task necessary for the progress of a project.
[0106] A Work Breakdown Structure (WBS) is a diagram or list that hierarchically organizes tasks in a visually clear manner to provide an overview of a project.
[0107] A "hierarchical structure" is a structure in which tasks are organized based on parent-child relationships and arranged in a step-by-step manner from higher to lower levels.
[0108] "Collection" refers to the process by which a server receives and stores responses from users sequentially.
[0109] "Generation" is the process by which a server creates new questions, tasks, and work breakdown structures based on the user's responses.
[0110] "Providing" refers to the server presenting the generated work breakdown structure and subsequent questions to the user via the terminal.
[0111] System overall configuration and functions
[0112] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[0113] User actions
[0114] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The terminal receives the user's answers and sends them to the server.
[0115] Terminal operation
[0116] The terminal receives input from the user and sends it to the server. It also receives the next question or the generated WBS from the server and displays it to the user. Specifically, the terminal processes the data sent from the server and displays the results on the screen.
[0117] Server Processing
[0118] The server receives user responses sent from the terminal and performs analysis. Based on the analysis results, it determines the next question to present and sends it to the terminal. After all questions have been answered, the server uses them to identify tasks and generate a Work Breakdown Structure (WBS). The generated WBS is then provided to the user via the terminal.
[0119] Hardware and software to be used
[0120] The system operates on standard PCs, smartphones, tablets, and servers connected to the internet. The main software used on the server side includes a generative AI model for generating questions and analyzing answers. This generative AI model dynamically generates the next question or extracts tasks based on the user's responses.
[0121] Specific example
[0122] Here are some specific examples of its use:
[0123] Enter the project name and end date:
[0124] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0125] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0126] Task generation:
[0127] The server generates a task called "Marketing plan creation kickoff meeting".
[0128] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[0129] Presentation of WBS results:
[0130] The generated WBS will be displayed on the terminal as shown below, for example.
[0131] 1. Kick-off meeting for marketing plan creation
[0132] 2. Submit the final report by December 31, 2023.
[0133] Example of a prompt
[0134] The following are examples of prompts to input into a generative AI model:
[0135] "Please enter the project details. The first question is, what is the project name?"
[0136] "Next, when is the project completion date?"
[0137] Thus, this system automatically identifies the necessary tasks and generates a work breakdown structure simply by the user answering the generated questions, significantly improving the efficiency of project management.
[0138] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0139] Step 1:
[0140] System startup and initial question presentation
[0141] When the system starts up, the server first performs initial setup and loads initial data. Next, it generates the first question and sends it to the terminal. Specifically, it uses a generation AI model to generate the question "What is the name of the project?" and sends it to the terminal. The terminal displays this received question to the user. At this point, the input is a "system startup and initial data loading request," and the output is a "question about the project name."
[0142] Step 2:
[0143] User input and submission of responses
[0144] The user uses the terminal's input interface to enter their answer to the first question. For example, they might answer "Create a marketing plan." When the user presses the submit button, the terminal sends this answer data to the server. At this point, the input is "User's answer (e.g., Create a marketing plan)" and the output is "Answer sent to server."
[0145] Step 3:
[0146] Generation and presentation of the following questions
[0147] The server analyzes the responses received from the user. A generative AI model is used for the analysis to determine the next question to present. For example, based on the response "Project name: Marketing plan creation," the server generates the next question "When is the project completion date?". This question is sent back to the terminal, which then displays the new question to the user. At this point, the input is "user response data (e.g., Marketing plan creation)" and the output is "next question (e.g., When is the project completion date?)."
[0148] Step 4:
[0149] Accumulating responses and identifying tasks
[0150] Each time a user answers multiple questions, the server sequentially stores each answer. After all questions have been answered, the server identifies tasks based on the collected answer data. For example, based on the answer "Project end date: December 31, 2023," it generates the task "Submit the final report by December 31, 2023." At this point, the input is "the accumulated user answers (e.g., marketing plan creation, December 31, 2023)," and the output is "a list of identified tasks."
[0151] Step 5:
[0152] WBS generation
[0153] The server organizes the identified tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). For example, it visually organizes tasks in the format of "1. Kick-off meeting for marketing plan creation" and "2. Submit final report by December 31, 2023." At this point, the input is a "list of tasks," and the output is the "data structure of the WBS."
[0154] Step 6:
[0155] Providing WBS to users
[0156] The server sends the generated WBS to the terminal. The terminal displays the received WBS to the user. This allows the user to visually grasp the overall picture of the project. At this point, the input is the "data structure of the generated WBS," and the output is the "display of the WBS to the user."
[0157] In this way, the system automatically generates and provides a project work breakdown structure to the user simply by having them input their answers. By dynamically generating questions through the prompts of the generating AI model, the efficiency of project management can be significantly improved.
[0158] (Application Example 1)
[0159] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0160] Conventional industrial autonomous machines lack systems for generating Work Breakdown Structures (WBS) and managing tasks based on them, making efficient work execution difficult. Furthermore, they require dedicated programs, and autonomous execution based on WBS automatically generated from user input is challenging. Additionally, setting appropriate deadlines and managing progress for work tasks is cumbersome, potentially reducing work efficiency.
[0161] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0162] In this invention, the server includes means for a user to input a question to the system, means for the server to generate the next question to ask based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, and means for an industrial autonomous machine to perform work based on the generated work breakdown structure. This enables the industrial autonomous machine to perform work efficiently and enables automated task management based on user input.
[0163] A "user" is an individual or organization that enters a question into the system and provides an answer.
[0164] A "server" is a device or computer system that receives and analyzes questions and answers from users and generates the next question to ask.
[0165] A "task" is a specific work item related to a particular project or task, and is an item that the server identifies based on the user's responses.
[0166] A "hierarchical structure" is a structure for organizing tasks, a method of clearly organizing work content by arranging tasks hierarchically, such as main tasks and subtasks.
[0167] A Work Breakdown Structure (WBS) is a collection of tasks organized in a hierarchical structure, systematically breaking down the entire project's work into a manageable format.
[0168] "Industrial autonomous equipment" refers to machines or systems that perform tasks automatically and operate autonomously based on user input or a Work Breakdown Structure (WBS) provided by a server.
[0169] Modes for carrying out the invention
[0170] System overall configuration and functions
[0171] This system automatically identifies necessary tasks based on the user's answers to questions, generates and provides a Work Breakdown Structure (WBS), and aims to enable autonomous industrial machines to perform tasks based on this WBS. Its main components are the user, the terminal, and the server.
[0172] User actions
[0173] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[0174] Terminal operation
[0175] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user. For this reason, mobile devices such as smartphones and tablets are suitable as terminals.
[0176] Server Processing
[0177] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. The server uses a generative AI model (e.g., GPT-3®) to run an algorithm that generates the next question based on the user's responses. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[0178] Operation of industrial autonomous equipment
[0179] Based on the generated Work Breakdown Structure (WBS), autonomous industrial equipment automatically executes tasks. This equipment receives task information from a server and performs tasks in the optimal order and timing. This eliminates the need for efficient work management and detailed task adjustments by humans in the factory.
[0180] Specific hardware and software used
[0181] Hardware: Smartphones, tablets, autonomous factory equipment
[0182] Software: Generative AI models (e.g., GPT-3), data processing libraries (e.g., Python's requests library and json library)
[0183] Specific example
[0184] For example, a user might be asked "What is the name of the project?" using their smartphone and answer "New setup of Line A." They might also be asked "When is the project completion date?" and answer "December 31, 2023." Based on this information, the server automatically identifies the tasks required to set up Line A and assigns those tasks to industrial autonomous equipment.
[0185] Example of a prompt
[0186] The following is an example of a specific prompt message:
[0187] What is the name of the project?
[0188] When is the project completion date?
[0189] How many shifts are there on Line A?
[0190] What are this month's main products?
[0191] In this way, a system is created that streamlines task management for industrial autonomous equipment simply by having the user input information in an interactive format.
[0192] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0193] Step 1:
[0194] When a user accesses the system using a terminal, the server sends an initial question to the terminal. The terminal displays this question to the user and accepts the user's response. In this process, the input to the terminal is information about the user's project, and the output is that this information being sent to the server.
[0195] Step 2:
[0196] The server receives user responses and analyzes the data. A generative AI model (e.g., GPT-3) is used for the analysis to generate the next question to ask. The input is the user's response data, and the output is the generated next question.
[0197] Step 3:
[0198] The server sends the next generated question to the terminal, which then displays it to the user. The user answers this question, and the answer is sent back to the server. This cycle is repeated until all the necessary project information is collected. The input is the question sent from the server, and the output is the user's answer.
[0199] Step 4:
[0200] The server collects all response data from users and identifies the final project tasks. Based on the analysis results, the server organizes each project task into a hierarchical structure. At this stage, the input is the entire user response data, and the output is a detailed list of tasks.
[0201] Step 5:
[0202] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. This allows the user to grasp the overall picture of the project. The input is the WBS generated on the server, and the output is its display on the terminal.
[0203] Step 6:
[0204] The terminal obtains user approval and sends the final WBS to the industrial autonomous machine. The autonomous machine automatically executes the work based on this WBS. The input is the user-approved WBS, and the output is the task assignment to the autonomous machine.
[0205] Step 7:
[0206] Industrial autonomous machines execute tasks in the optimal order and timing based on the received Work Breakdown Structure (WBS). The machines feed back progress to the server, which readjusts tasks as needed. The input is task information based on the WBS, and the output is the completed work.
[0207] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0208] System overall configuration and functions
[0209] This system identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from user input and adapts the questions and adjusts task priorities accordingly. The main components are the user, terminal, server, and emotion engine.
[0210] User actions
[0211] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". Furthermore, the sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[0212] Terminal operation
[0213] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[0214] Server Processing
[0215] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[0216] Emotional Engine Processing
[0217] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[0218] Explain the program's processing in natural language.
[0219] 1. Presenting questions and collecting answers:
[0220] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[0221] 2. Recognizing emotions and generating the next question:
[0222] The server receives user input, and the emotion engine analyzes that input to recognize the user's emotional state. Based on this, the server determines the next question to ask and sends it to the terminal.
[0223] 3. Accumulating responses and presenting adaptive questions:
[0224] The system continuously accumulates user responses and adaptively modifies the questions based on the analysis results of the emotion engine. For example, if a user is experiencing stress, the difficulty of the questions may be lowered or encouraging messages may be added.
[0225] 4. Task generation and prioritization considering emotions:
[0226] After all the answers to the questions have been collected, the server uses those answers to call the `derive_tasks` function to identify tasks. Furthermore, it adjusts the priority of each task based on the emotions recognized by the emotion engine.
[0227] 5. Generating the WBS:
[0228] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered, and prioritization based on personal preference is also reflected.
[0229] 6. Provided by WBS:
[0230] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[0231] Specific example
[0232] Enter the project name and end date:
[0233] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0234] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0235] Recognition and adaptive processing of emotions:
[0236] If the emotion engine detects "stress" when a user responds, the server will simplify the next question and display a message such as, "Don't worry about the progress."
[0237] Task generation and prioritization:
[0238] The server generates a task called "Marketing plan creation kickoff meeting" and, taking the results of the sentiment engine into consideration, sets the task "Submit final report by December 31, 2023" as a high-priority task.
[0239] Presentation of WBS results:
[0240] The generated WBS is provided to the user, for example, as follows:
[0241] 1. Kick-off meeting for marketing plan creation
[0242] 2. Submit the final report by December 31, 2023.
[0243] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, resulting in efficient and less stressful project management.
[0244] The following describes the processing flow.
[0245] Step 1:
[0246] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[0247] Step 2:
[0248] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[0249] Step 3:
[0250] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[0251] Step 4:
[0252] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[0253] Step 5:
[0254] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[0255] Step 6:
[0256] The server invokes an emotion engine to analyze the user's responses and determine their emotions. For example, it can recognize emotions such as "excitement" or "doubt" from the user's input text.
[0257] Step 7:
[0258] The server selects the next question to ask (e.g., "When is the project start date?") based on the user's emotional state. If the emotion engine detects "stress," the server makes adjustments, such as simplifying the question.
[0259] Step 8:
[0260] The server returns the next selected question as a response to the terminal. The terminal then presents this question to the user.
[0261] Step 9:
[0262] The user answers the following question, and the device sends it back to the server via a POST request. The server also saves this answer to user_responses.
[0263] Step 10:
[0264] The process from steps 6 to 9 is repeated until the user has answered all the questions. Each time, the emotion engine analyzes the user's emotional state, and the server adaptively modifies the questions.
[0265] Step 11:
[0266] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[0267] Step 12:
[0268] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[0269] Step 13:
[0270] The server prioritizes tasks based on the results of the emotion engine's analysis. For example, if a user is feeling "anxious," it will prioritize tasks that need immediate attention.
[0271] Step 14:
[0272] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[0273] Step 15:
[0274] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[0275] This allows users to input information interactively, receive support tailored to their emotional state, and automatically generate and review the project's Work Breakdown Structure (WBS).
[0276] (Example 2)
[0277] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 will be referred to as the "terminal".
[0278] In traditional project management systems, manually entering project details can be burdensome for users. This burden is especially great when users are emotionally unstable. Against this backdrop, there has been a need for a system that allows users to easily and efficiently identify tasks and generate an appropriate Work Breakdown Structure (WBS).
[0279] The specific processing by the specific processing unit 290 of the data processing apparatus 12 in Example 2 is realized by the following means. In this invention, the server includes means for a user to input a question to the system, means for the server to generate the next question to ask based on the user's question, means for the server to collect answers from the user and identify tasks based thereon, means for the server to organize the tasks into a hierarchical structure to generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the server to recognize emotions from the user's answers and adaptively change the question content based on the emotions, and means for the server to adjust the priority order of tasks considering the emotions. Thereby, while receiving support according to emotions, the user can efficiently identify project tasks and generate an appropriate WBS.
[0280] The "user" refers to a person who operates the system to input an answer to a question.
[0281] The "server" refers to a central apparatus or computer system that receives inputs from the user and performs question generation, answer analysis, task identification, and work breakdown structure generation.
[0282] The "emotion engine" refers to software or an algorithm for analyzing emotions from the user's answers and adaptively changing the behavior of the system based on the information.
[0283] The "means for inputting a question" refers to an interface for the user to input an answer to the system in text or voice. This interface includes a keyboard, a microphone, etc.
[0284] The "means for generating the next question to ask" refers to a function for the server to determine the optimal next question based on the user's input and present it to the user.
[0285] "Means for collecting responses" refers to the function for receiving user input and transmitting it to the server. This function is realized using a communication module and a database.
[0286] "Means for identifying tasks" refers to algorithms or programs for identifying specific work items of a project based on user input and listing them.
[0287] "Means for organizing tasks into a hierarchical structure" refers to the function for arranging the identified tasks into a logical hierarchical structure and creating a work breakdown structure.
[0288] "Work breakdown structure (WBS)" refers to a framework for hierarchically organizing and visually displaying all tasks that make up a project.
[0289] "Means for recognizing emotions" refers to the function for analyzing emotions from a user's text input or voice response and identifying their state. Natural language processing and machine learning are used for this function.
[0290] "Means for adaptively changing the question content" refers to the function for adjusting the content and difficulty level of the next question to be displayed according to the recognized emotional state of the user.
[0291] "Means for adjusting priorities" refers to the function for reevaluating the importance and urgency of the generated tasks in consideration of the user's emotional state and arranging them in an appropriate order.
[0292] Overall system configuration and functions
[0293] This system extracts necessary tasks by having the user answer questions, generates and provides a work breakdown structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from the user's input and adapts the question content and adjusts the task priorities. The main components are the user, the terminal, the server, and the emotion engine.
[0294] User operations
[0295] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[0296] Terminal operation
[0297] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[0298] Server Processing
[0299] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[0300] Emotional Engine Processing
[0301] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[0302] Specific example
[0303] Enter the project name and end date:
[0304] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan." Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0305] Emotion recognition and adaptive processing:
[0306] When the emotion engine recognizes "stress" when the user answers, the server simplifies the next question and displays a message such as "Don't worry about the progress."
[0307] Task generation and priority adjustment:
[0308] The server generates a task named "Kick-off meeting for creating a marketing plan" and sets the task of "Submitting a final report by December 31, 2023" as a high-priority task considering the results of the emotion engine.
[0309] Presentation of WBS results:
[0310] The generated WBS is provided to the user as follows, for example.
[0311] 1. Kick-off meeting for creating a marketing plan
[0312] 2. Submit a final report by December 31, 2023
[0313] Examples of prompt sentences:
[0314] - "What is the name of the project?"
[0315] - "When is the end date of the project?"
[0316] - "In one word, what is your current emotional state?"
[0317] - "Are there any tasks you particularly want to prioritize?"
[0318] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, enabling efficient and stress-free project management.
[0319] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0320] Step 1: Access the user's system
[0321] The user accesses the system using a terminal. Upon access, the server initiates a session for the user, generates the first question "What is the name of the project?", and sends it to the terminal. The input is the user's access request, and the output is the generated first question.
[0322] Step 2: The user answers the question.
[0323] The user answers the question displayed on the terminal, "What is the name of the project?", with "Creating a marketing plan". This answer is sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[0324] Step 3: Emotional analysis using the emotion engine
[0325] The server sends the received user responses to the sentiment engine for sentiment analysis. For example, if the user is identified as "highly motivated," the result is returned to the server. The input is the user's response data, and the output is the sentiment analysis result.
[0326] Step 4: Generating the next question
[0327] The server generates the next question based on the sentiment engine's analysis results. For example, it might decide on "When is the project completion date?" and send it to the terminal. The inputs are the sentiment analysis results and past user responses, and the output generates the next question.
[0328] Step 5: The user answers the following question.
[0329] The user answers the next question displayed on the terminal, "When is the project end date?", with "December 31, 2023". This answer is also sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[0330] Step 6: Accumulation and Analysis of Responses
[0331] The server stores all user responses collected to date and analyzes that data. This aggregates detailed project information. The input is all user response data, and the output is the analyzed project information.
[0332] Step 7: Task Identification
[0333] The server uses the analyzed project information to call the `derive_tasks` function to identify the necessary tasks. For example, tasks such as "Kick-off meeting for marketing plan creation" and "Completion of market research" are generated. The input is the analyzed project information, and the output is a list of identified tasks.
[0334] Step 8: Prioritizing based on emotions
[0335] The server takes the results of the emotion engine into consideration and adjusts the priority of each task. For example, if the user is feeling stressed, it sets "tasks that can be completed in a short time" as a high priority. The input is a list of tasks and the emotion analysis results, and the output is a list of tasks with adjusted priorities.
[0336] Step 9: Generate WBS
[0337] The server organizes a list of prioritized tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). The input is a list of prioritized tasks, and the output is the generated WBS.
[0338] Step 10: Provide the WBS
[0339] The server sends the generated WBS to the terminal, which then displays it to the user. The user reviews the completed WBS and uses it for project management. The input is the generated WBS, and the output is the WBS displayed on the terminal.
[0340] (Application Example 2)
[0341] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0342] Modern factory production management requires the efficient management of complex task schedules. However, generating work breakdown structures (WBS) and adjusting task priorities is time-consuming and labor-intensive. Furthermore, the emotional state of managers can affect production efficiency, and a lack of appropriate feedback and task adjustments can disrupt production. Therefore, there is a need for a system that can adaptively respond based on manager input and autonomously generate the optimal production schedule.
[0343] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for the user to input a question to the system, means for the server to generate the next question to be asked based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the emotion engine to recognize emotions from the user's answers and for the server to adaptively change the content of the questions based on the recognition result, means for the server to adjust the priority of tasks based on the emotions recognized by the emotion engine, and means for a factory robot to autonomously optimize production tasks based on the generated work breakdown structure and generate a work schedule. This enables efficient and adaptive production management while providing appropriate feedback according to the emotional state of the manager.
[0344] A "user" is someone who accesses the system, enters questions, and operates the system.
[0345] A "system" is a collection of devices and programs that enable users to identify necessary tasks by answering questions and generate and provide a Work Breakdown Structure (WBS).
[0346] A "server" is a device that receives user questions and answers, generates subsequent questions based on them, identifies tasks, and creates a Work Breakdown Structure (WBS).
[0347] "Means for entering questions" refers to an interface for users to input questions into a system, such as an input device like a keyboard or touchscreen.
[0348] "Means of collection" refers to devices or programs that have the function of receiving responses from users and storing them in a database or similar.
[0349] A "means for identifying tasks" refers to a device or program that has the function of identifying and listing the necessary tasks and processes based on the user's responses.
[0350] "Means of organizing into a hierarchical structure" refers to devices or programs that have the function of structuring identified tasks hierarchically and organizing them in a way that establishes a hierarchy of higher and lower levels.
[0351] A Work Breakdown Structure (WBS) is a structure that hierarchically breaks down and systematically organizes all the tasks in a particular project.
[0352] An "emotion engine" is an algorithm or program that analyzes and recognizes a user's emotional state based on their responses and text input.
[0353] "An adaptive modification mechanism" refers to a device or program that has the function of dynamically changing subsequent questions and feedback based on the user's emotions recognized by the emotion engine.
[0354] A "means for adjusting priorities" refers to a device or program that has the function of dynamically resetting task priorities based on the emotional results recognized by the emotion engine.
[0355] A "factory robot" is a mechanical device that operates autonomously within a factory and performs production tasks.
[0356] "Means for autonomously optimizing and generating work schedules" refers to devices or programs that have the function of autonomously optimizing production tasks and creating effective work schedules based on a generated Work Breakdown Structure (WBS) used by factory robots.
[0357] "Means of provision" refers to devices or programs that have the function of displaying the generated Work Breakdown Structure (WBS) to the user via a display device or the like.
[0358] Modes for carrying out the invention
[0359] System overall configuration and functions
[0360] The system of this invention comprises a user, a terminal, a server, an emotion engine, and a factory robot. The user accesses the system via the terminal and inputs answers to questions about production tasks. The server analyzes these answers, uses the emotion engine to recognize the user's emotional state, and adaptively generates the next questions. It also collects all answers to break down the tasks and provides the user with a generated Work Breakdown Structure (WBS). Furthermore, the factory robot autonomously optimizes the production tasks and generates a work schedule based on this WBS.
[0361] Hardware and software configuration
[0362] Hardware:
[0363] Smartphone (iOS or Android®)
[0364] Factory robot control systems (PLCs, microcontrollers, etc.)
[0365] software:
[0366] Server-side: Programming languages such as Python and Ruby
[0367] Sentiment analysis API: For example, IBM Watson® Tone Analyzer
[0368] Databases: MySQL (registered trademark), PostgreSQL, etc.
[0369] Smartphone application frameworks: React Native and Flutter (registered trademark)
[0370] Emotion recognition and task generation / adjustment
[0371] When a user answers questions about production, the response data is sent from the terminal to the server. The server is equipped with an emotion engine, which analyzes the user's emotional state. For example, the emotion engine recognizes emotions such as "stress," "joy," and "anger" from the text of the response.
[0372] Based on the perceived emotions, the server adaptively modifies the next questions it presents. For example, if the server detects that the user is experiencing severe stress, it may lower the difficulty of the questions or add encouraging messages.
[0373] The server identifies tasks from all collected responses and automatically adjusts priorities, taking into account the results of the emotion engine. This ensures that the generated WBS accurately reflects the user's emotional state, enabling optimized production management.
[0374] Autonomous optimization and scheduling of factory robots
[0375] The generated Work Breakdown Structure (WBS) is sent from the server to the factory robots. Based on this WBS, the factory robots autonomously optimize production tasks. They then generate an optimal work schedule and begin their activities accordingly. This system significantly reduces manual adjustments and is expected to improve production efficiency.
[0376] Specific example
[0377] For example, consider the case where the administrator enters the following information.
[0378] "We want to start a new production line."
[0379] "Don't worry about the progress."
[0380] "We will focus on quality checks."
[0381] In this case, the emotion engine recognizes "stress" and provides feedback such as "Don't worry about progress." The server then sends the generated WBS to the factory robot, which autonomously optimizes high-priority tasks focused on "quality checks."
[0382] In this way, efficient and adaptive production management is achieved while taking into account the emotional state of the users.
[0383] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0384] Step 1:
[0385] Users access the system using a terminal and answer questions about production tasks. The input is text data, such as "I want to start a new production line." The terminal sends this input to the server.
[0386] Step 2:
[0387] The server receives user input. The server analyzes the input data and sends it to the emotion engine to recognize the user's emotions. The input data is in text format, and after the emotion engine analyzes it, the recognized emotion data is output.
[0388] Step 3:
[0389] The server generates the next question to ask based on sentiment data from the sentiment engine. For example, if the server detects that the user is stressed, it will generate a question that includes an encouraging message such as "Don't worry about the progress." The generated question is sent to the terminal in text format.
[0390] Step 4:
[0391] The terminal displays the next question from the server to the user. The user answers the new question, and that answer is sent back to the server. The input is again text data.
[0392] Step 5:
[0393] The server collects all responses from users and identifies tasks based on them. Specifically, it analyzes the response data and lists the necessary tasks. For example, tasks such as "start the production line" and "quality check" might be identified.
[0394] Step 6:
[0395] The server organizes the identified tasks into a hierarchical structure to generate a Work Breakdown Structure (WBS). It also adjusts the priority of each task, taking into account the analysis results of the emotion engine. The generated WBS is output in a hierarchically organized list format.
[0396] Step 7:
[0397] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. The user can view the WBS on the screen and grasp the overall picture of the production tasks.
[0398] Step 8:
[0399] The server sends the generated Work Breakdown Structure (WBS) to the factory's robot control system. Based on this WBS, the robots autonomously optimize production tasks and generate work schedules. The optimized schedule is then executed as specific work instructions by the factory robot's control system.
[0400] Step 9:
[0401] Factory robots perform necessary production tasks according to the generated schedule. For example, if the quality check task is set as a high priority, the robot will perform the quality check first. The completed tasks are fed back to the server in real time.
[0402] This series of processing flows enables efficient and adaptive production management while taking into account the user's emotional state. This system aims to reduce user stress and improve production efficiency.
[0403] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating 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.
[0404] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0405] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0406] [Second Embodiment]
[0407] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0408] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0409] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0410] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0411] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0412] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0413] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0414] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0415] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0416] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0417] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0418] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. 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".
[0419] System overall configuration and functions
[0420] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[0421] User actions
[0422] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[0423] Terminal operation
[0424] The terminal receives user input and sends it to the server. It then displays the next question returned from the server and the generated WBS to the user.
[0425] Server Processing
[0426] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[0427] Explain the program's processing in natural language.
[0428] 1. Presenting questions and collecting answers:
[0429] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[0430] 2. Generating the next question:
[0431] The server analyzes the user's input and determines the next question to present. This question is then sent back to the terminal and presented to the user.
[0432] 3. Accumulating responses and identifying tasks:
[0433] User responses are accumulated on the server in real time, and once all questions are completed, the server extracts project tasks based on those responses. For example, if the project name is "Creating a Marketing Plan," a kickoff meeting will be generated as a task based on that name.
[0434] 4. Generating the WBS:
[0435] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered and presented in a visually easy-to-understand format.
[0436] 5. Provided by WBS:
[0437] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[0438] Specific example
[0439] Enter the project name and end date:
[0440] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0441] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0442] Task generation:
[0443] The server generates a task called "Marketing plan creation kickoff meeting".
[0444] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[0445] Presentation of WBS results:
[0446] The generated WBS is provided to the user, for example, as follows:
[0447] 1. Kick-off meeting for marketing plan creation
[0448] 2. Submit the final report by December 31, 2023.
[0449] In this way, users can automatically generate a project's WBS simply by inputting information interactively, significantly improving the efficiency of project management.
[0450] The following describes the processing flow.
[0451] Step 1:
[0452] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[0453] Step 2:
[0454] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[0455] Step 3:
[0456] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[0457] Step 4:
[0458] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[0459] Step 5:
[0460] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[0461] Step 6:
[0462] The server selects the next question (e.g., "When is the project start date?") and returns it to the terminal as a response.
[0463] Step 7:
[0464] The terminal presents the user with the next question received from the server. The user enters their answer, and the terminal sends that answer to the server via a POST request.
[0465] Step 8:
[0466] The process from Step 5 to Step 7 is repeated until the user has answered all questions. The server sequentially stores each user's answers in the `user_responses` dictionary.
[0467] Step 9:
[0468] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[0469] Step 10:
[0470] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[0471] Step 11:
[0472] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[0473] Step 12:
[0474] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[0475] This allows users to automatically generate and review a project's WBS (Work Breakdown Structure) while interactively inputting information.
[0476] (Example 1)
[0477] Next, we will describe Example 1. 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."
[0478] Traditional project management systems require users to manually define tasks and create work breakdown structures (WBS), which is extremely time-consuming. This leads to decreased project management efficiency and an increased likelihood of missed tasks and errors.
[0479] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0480] In this invention, the server includes means for the user to input answers to questions sequentially displayed to the system; means for the server to generate the next question to be asked based on the user's answers and present it to the user via a terminal; means for the server to collect answers from the user and identify tasks based on them; means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure; and means for the server to provide the work breakdown structure to the user via a terminal. This makes it possible to automatically generate a work breakdown structure without the user having to manually set tasks, significantly improving the efficiency of project management and preventing tasks from being missed or errors made.
[0481] A "user" is the entity that accesses the system and enters answers to questions.
[0482] A "terminal" is a device operated by a user that communicates with a server to exchange questions and answers.
[0483] A "server" is a central processing unit that analyzes user responses, generates the next question, identifies tasks, and creates a Work Breakdown Structure (WBS).
[0484] A "question" is an item generated by the server to collect detailed information about the project from the user and presented to the user via the terminal.
[0485] An "answer" is the information that a user enters in response to a question via their device.
[0486] A "task" is a specific item of work or task necessary for the progress of a project.
[0487] A Work Breakdown Structure (WBS) is a diagram or list that hierarchically organizes tasks in a visually clear manner to provide an overview of a project.
[0488] A "hierarchical structure" is a structure in which tasks are organized based on parent-child relationships and arranged in a step-by-step manner from higher to lower levels.
[0489] "Collection" refers to the process by which a server receives and stores responses from users sequentially.
[0490] "Generation" is the process by which a server creates new questions, tasks, and work breakdown structures based on the user's responses.
[0491] "Providing" refers to the server presenting the generated work breakdown structure and subsequent questions to the user via the terminal.
[0492] System overall configuration and functions
[0493] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[0494] User actions
[0495] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The terminal receives the user's answers and sends them to the server.
[0496] Terminal operation
[0497] The terminal receives input from the user and sends it to the server. It also receives the next question or the generated WBS from the server and displays it to the user. Specifically, the terminal processes the data sent from the server and displays the results on the screen.
[0498] Server Processing
[0499] The server receives user responses sent from the terminal and performs analysis. Based on the analysis results, it determines the next question to present and sends it to the terminal. After all questions have been answered, the server uses them to identify tasks and generate a Work Breakdown Structure (WBS). The generated WBS is then provided to the user via the terminal.
[0500] Hardware and software to be used
[0501] The system operates on standard PCs, smartphones, tablets, and servers connected to the internet. The main software used on the server side includes a generative AI model for generating questions and analyzing answers. This generative AI model dynamically generates the next question or extracts tasks based on the user's responses.
[0502] Specific example
[0503] Here are some specific examples of its use:
[0504] Enter the project name and end date:
[0505] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0506] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0507] Task generation:
[0508] The server generates a task called "Marketing plan creation kickoff meeting".
[0509] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[0510] Presentation of WBS results:
[0511] The generated WBS will be displayed on the terminal as shown below, for example.
[0512] 1. Kick-off meeting for marketing plan creation
[0513] 2. Submit the final report by December 31, 2023.
[0514] Example of a prompt
[0515] The following are examples of prompts to input into a generative AI model:
[0516] "Please enter the project details. The first question is, what is the project name?"
[0517] "Next, when is the project completion date?"
[0518] Thus, this system automatically identifies the necessary tasks and generates a work breakdown structure simply by the user answering the generated questions, significantly improving the efficiency of project management.
[0519] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0520] Step 1:
[0521] System startup and initial question presentation
[0522] When the system starts up, the server first performs initial setup and loads initial data. Next, it generates the first question and sends it to the terminal. Specifically, it uses a generation AI model to generate the question "What is the name of the project?" and sends it to the terminal. The terminal displays this received question to the user. At this point, the input is a "system startup and initial data loading request," and the output is a "question about the project name."
[0523] Step 2:
[0524] User input and submission of responses
[0525] The user uses the terminal's input interface to enter their answer to the first question. For example, they might answer "Create a marketing plan." When the user presses the submit button, the terminal sends this answer data to the server. At this point, the input is "User's answer (e.g., Create a marketing plan)" and the output is "Answer sent to server."
[0526] Step 3:
[0527] Generation and presentation of the following questions
[0528] The server analyzes the responses received from the user. A generative AI model is used for the analysis to determine the next question to present. For example, based on the response "Project name: Marketing plan creation," the server generates the next question "When is the project completion date?". This question is sent back to the terminal, which then displays the new question to the user. At this point, the input is "user response data (e.g., Marketing plan creation)" and the output is "next question (e.g., When is the project completion date?)."
[0529] Step 4:
[0530] Accumulating responses and identifying tasks
[0531] Each time a user answers multiple questions, the server sequentially stores each answer. After all questions have been answered, the server identifies tasks based on the collected answer data. For example, based on the answer "Project end date: December 31, 2023," it generates the task "Submit the final report by December 31, 2023." At this point, the input is "the accumulated user answers (e.g., marketing plan creation, December 31, 2023)," and the output is "a list of identified tasks."
[0532] Step 5:
[0533] WBS generation
[0534] The server organizes the identified tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). For example, it visually organizes tasks in the format of "1. Kick-off meeting for marketing plan creation" and "2. Submit final report by December 31, 2023." At this point, the input is a "list of tasks," and the output is the "data structure of the WBS."
[0535] Step 6:
[0536] Providing WBS to users
[0537] The server sends the generated WBS to the terminal. The terminal displays the received WBS to the user. This allows the user to visually grasp the overall picture of the project. At this point, the input is the "data structure of the generated WBS," and the output is the "display of the WBS to the user."
[0538] In this way, the system automatically generates and provides a project work breakdown structure to the user simply by having them input their answers. By dynamically generating questions through the prompts of the generating AI model, the efficiency of project management can be significantly improved.
[0539] (Application Example 1)
[0540] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0541] Conventional industrial autonomous machines lack systems for generating Work Breakdown Structures (WBS) and managing tasks based on them, making efficient work execution difficult. Furthermore, they require dedicated programs, and autonomous execution based on WBS automatically generated from user input is challenging. Additionally, setting appropriate deadlines and managing progress for work tasks is cumbersome, potentially reducing work efficiency.
[0542] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0543] In this invention, the server includes means for a user to input a question to the system, means for the server to generate the next question to ask based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, and means for an industrial autonomous machine to perform work based on the generated work breakdown structure. This enables the industrial autonomous machine to perform work efficiently and enables automated task management based on user input.
[0544] A "user" is an individual or organization that enters a question into the system and provides an answer.
[0545] A "server" is a device or computer system that receives and analyzes questions and answers from users and generates the next question to ask.
[0546] A "task" is a specific work item related to a particular project or task, and is an item that the server identifies based on the user's responses.
[0547] A "hierarchical structure" is a structure for organizing tasks, a method of clearly organizing work content by arranging tasks hierarchically, such as main tasks and subtasks.
[0548] A Work Breakdown Structure (WBS) is a collection of tasks organized in a hierarchical structure, systematically breaking down the entire project's work into a manageable format.
[0549] "Industrial autonomous equipment" refers to machines or systems that perform tasks automatically and operate autonomously based on user input or a Work Breakdown Structure (WBS) provided by a server.
[0550] Modes for carrying out the invention
[0551] System overall configuration and functions
[0552] This system automatically identifies necessary tasks based on the user's answers to questions, generates and provides a Work Breakdown Structure (WBS), and aims to enable autonomous industrial machines to perform tasks based on this WBS. Its main components are the user, the terminal, and the server.
[0553] User actions
[0554] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[0555] Terminal operation
[0556] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user. For this reason, mobile devices such as smartphones and tablets are suitable as terminals.
[0557] Server Processing
[0558] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. The server uses a generative AI model (e.g., GPT-3) to run an algorithm that generates the next question based on the user's responses. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[0559] Operation of industrial autonomous equipment
[0560] Based on the generated Work Breakdown Structure (WBS), autonomous industrial equipment automatically executes tasks. This equipment receives task information from a server and performs tasks in the optimal order and timing. This eliminates the need for efficient work management and detailed task adjustments by humans in the factory.
[0561] Specific hardware and software used
[0562] Hardware: Smartphones, tablets, autonomous factory equipment
[0563] Software: Generative AI models (e.g., GPT-3), data processing libraries (e.g., Python's requests library and json library)
[0564] Specific example
[0565] For example, a user might be asked "What is the name of the project?" using their smartphone and answer "New setup of Line A." They might also be asked "When is the project completion date?" and answer "December 31, 2023." Based on this information, the server automatically identifies the tasks required to set up Line A and assigns those tasks to industrial autonomous equipment.
[0566] Example of a prompt
[0567] The following is an example of a specific prompt message:
[0568] What is the name of the project?
[0569] When is the project completion date?
[0570] How many shifts are there on Line A?
[0571] What are this month's main products?
[0572] In this way, a system is created that streamlines task management for industrial autonomous equipment simply by having the user input information in an interactive format.
[0573] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0574] Step 1:
[0575] When a user accesses the system using a terminal, the server sends an initial question to the terminal. The terminal displays this question to the user and accepts the user's response. In this process, the input to the terminal is information about the user's project, and the output is that this information being sent to the server.
[0576] Step 2:
[0577] The server receives user responses and analyzes the data. A generative AI model (e.g., GPT-3) is used for the analysis to generate the next question to ask. The input is the user's response data, and the output is the generated next question.
[0578] Step 3:
[0579] The server sends the next generated question to the terminal, which then displays it to the user. The user answers this question, and the answer is sent back to the server. This cycle is repeated until all the necessary project information is collected. The input is the question sent from the server, and the output is the user's answer.
[0580] Step 4:
[0581] The server collects all response data from users and identifies the final project tasks. Based on the analysis results, the server organizes each project task into a hierarchical structure. At this stage, the input is the entire user response data, and the output is a detailed list of tasks.
[0582] Step 5:
[0583] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. This allows the user to grasp the overall picture of the project. The input is the WBS generated on the server, and the output is its display on the terminal.
[0584] Step 6:
[0585] The terminal obtains user approval and sends the final WBS to the industrial autonomous machine. The autonomous machine automatically executes the work based on this WBS. The input is the user-approved WBS, and the output is the task assignment to the autonomous machine.
[0586] Step 7:
[0587] Industrial autonomous machines execute tasks in the optimal order and timing based on the received Work Breakdown Structure (WBS). The machines feed back progress to the server, which readjusts tasks as needed. The input is task information based on the WBS, and the output is the completed work.
[0588] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0589] System overall configuration and functions
[0590] This system identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from user input and adapts the questions and adjusts task priorities accordingly. The main components are the user, terminal, server, and emotion engine.
[0591] User actions
[0592] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". Furthermore, the sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[0593] Terminal operation
[0594] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[0595] Server Processing
[0596] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[0597] Emotional Engine Processing
[0598] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[0599] Explain the program's processing in natural language.
[0600] 1. Presenting questions and collecting answers:
[0601] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[0602] 2. Recognizing emotions and generating the next question:
[0603] The server receives user input, and the emotion engine analyzes that input to recognize the user's emotional state. Based on this, the server determines the next question to ask and sends it to the terminal.
[0604] 3. Accumulating responses and presenting adaptive questions:
[0605] The system continuously accumulates user responses and adaptively modifies the questions based on the analysis results of the emotion engine. For example, if a user is experiencing stress, the difficulty of the questions may be lowered or encouraging messages may be added.
[0606] 4. Task generation and prioritization considering emotions:
[0607] After all the answers to the questions have been collected, the server uses those answers to call the `derive_tasks` function to identify tasks. Furthermore, it adjusts the priority of each task based on the emotions recognized by the emotion engine.
[0608] 5. Generating the WBS:
[0609] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered, and prioritization based on personal preference is also reflected.
[0610] 6. Provided by WBS:
[0611] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[0612] Specific example
[0613] Enter the project name and end date:
[0614] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0615] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0616] Recognition and adaptive processing of emotions:
[0617] If the emotion engine detects "stress" when a user responds, the server will simplify the next question and display a message such as, "Don't worry about the progress."
[0618] Task generation and prioritization:
[0619] The server generates a task called "Marketing plan creation kickoff meeting" and, taking the results of the sentiment engine into consideration, sets the task "Submit final report by December 31, 2023" as a high-priority task.
[0620] Presentation of WBS results:
[0621] The generated WBS is provided to the user, for example, as follows:
[0622] 1. Kick-off meeting for marketing plan creation
[0623] 2. Submit the final report by December 31, 2023.
[0624] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, resulting in efficient and less stressful project management.
[0625] The following describes the processing flow.
[0626] Step 1:
[0627] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[0628] Step 2:
[0629] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[0630] Step 3:
[0631] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[0632] Step 4:
[0633] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[0634] Step 5:
[0635] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[0636] Step 6:
[0637] The server invokes an emotion engine to analyze the user's responses and determine their emotions. For example, it can recognize emotions such as "excitement" or "doubt" from the user's input text.
[0638] Step 7:
[0639] The server selects the next question to ask (e.g., "When is the project start date?") based on the user's emotional state. If the emotion engine detects "stress," the server makes adjustments, such as simplifying the question.
[0640] Step 8:
[0641] The server returns the next selected question as a response to the terminal. The terminal then presents this question to the user.
[0642] Step 9:
[0643] The user answers the following question, and the device sends it back to the server via a POST request. The server also saves this answer to user_responses.
[0644] Step 10:
[0645] The process from steps 6 to 9 is repeated until the user has answered all the questions. Each time, the emotion engine analyzes the user's emotional state, and the server adaptively modifies the questions.
[0646] Step 11:
[0647] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[0648] Step 12:
[0649] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[0650] Step 13:
[0651] The server prioritizes tasks based on the results of the emotion engine's analysis. For example, if a user is feeling "anxious," it will prioritize tasks that need immediate attention.
[0652] Step 14:
[0653] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[0654] Step 15:
[0655] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[0656] This allows users to input information interactively, receive support tailored to their emotional state, and automatically generate and review the project's Work Breakdown Structure (WBS).
[0657] (Example 2)
[0658] Next, we will describe Example 2. 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".
[0659] In traditional project management systems, manually entering project details can be burdensome for users. This burden is especially great when users are emotionally unstable. Against this backdrop, there has been a need for a system that allows users to easily and efficiently identify tasks and generate an appropriate Work Breakdown Structure (WBS).
[0660] The identification processing 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 the user to input a question to the system, means for the server to generate the next question to be asked based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the server to recognize emotions from the user's answers and adaptively change the content of the questions based on those emotions, and means for the server to adjust the priority of tasks taking emotions into consideration. As a result, the user can efficiently identify project tasks and generate an appropriate WBS while receiving support tailored to their emotions.
[0661] A "user" refers to a person who operates the system and inputs answers to questions.
[0662] A "server" refers to a central device or computer system that receives input from users and performs tasks such as generating questions, analyzing answers, identifying tasks, and creating work breakdown structures.
[0663] An "emotion engine" refers to software or algorithms that analyze emotions from user responses and adaptively change the system's behavior based on that information.
[0664] "Means of inputting questions" refers to the interface through which users input answers to the system via text or voice. This interface includes keyboards, microphones, and other similar devices.
[0665] "Means for generating the next question to ask" refers to a function that allows the server to determine the optimal next question based on the user's input and present it to the user.
[0666] "Means of collecting responses" refers to the function of receiving user input and sending it to the server. This function is implemented using communication modules and databases.
[0667] "Methods for identifying tasks" refers to algorithms or programs that identify specific work items for a project based on user input and list them.
[0668] "Means for organizing tasks into a hierarchical structure" refers to a function for arranging identified tasks into a logical hierarchical structure and creating a work breakdown structure.
[0669] A "Work Breakdown Structure (WBS)" refers to a framework for hierarchically organizing and visually displaying all the tasks that make up a project.
[0670] "Means of recognizing emotions" refers to a function that analyzes a user's text input or voice response to identify their emotions and state. This function utilizes natural language processing and machine learning.
[0671] "Means of adaptively changing question content" refers to a function that adjusts the content and difficulty level of the next question displayed according to the recognized emotional state of the user.
[0672] "Means for adjusting priorities" refers to features that take into account the user's emotional state, re-evaluate the importance and urgency of generated tasks, and arrange them in an appropriate order.
[0673] System overall configuration and functions
[0674] This system identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from user input and adapts the questions and adjusts task priorities accordingly. The main components are the user, terminal, server, and emotion engine.
[0675] User actions
[0676] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[0677] Terminal operation
[0678] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[0679] Server Processing
[0680] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[0681] Emotional Engine Processing
[0682] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[0683] Specific example
[0684] Enter the project name and end date:
[0685] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan." Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0686] Recognition and adaptive processing of emotions:
[0687] If the emotion engine detects "stress" when a user responds, the server will simplify the next question and display a message such as, "Don't worry about the progress."
[0688] Task generation and prioritization:
[0689] The server generates a task called "Marketing plan creation kickoff meeting" and, taking the results of the sentiment engine into consideration, sets the task "Submit final report by December 31, 2023" as a high-priority task.
[0690] Presentation of WBS results:
[0691] The generated WBS is provided to the user, for example, as follows:
[0692] 1. Kick-off meeting for marketing plan creation
[0693] 2. Submit the final report by December 31, 2023.
[0694] Example of a prompt:
[0695] - "What is the name of the project?"
[0696] - "When is the project completion date?"
[0697] - "How would you describe your current emotional state in one word?"
[0698] - "Are there any tasks you'd particularly like to prioritize?"
[0699] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, enabling efficient and stress-free project management.
[0700] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0701] Step 1: Access the user's system
[0702] The user accesses the system using a terminal. Upon access, the server initiates a session for the user, generates the first question "What is the name of the project?", and sends it to the terminal. The input is the user's access request, and the output is the generated first question.
[0703] Step 2: The user answers the question.
[0704] The user answers the question displayed on the terminal, "What is the name of the project?", with "Creating a marketing plan". This answer is sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[0705] Step 3: Emotional analysis using the emotion engine
[0706] The server sends the received user responses to the sentiment engine for sentiment analysis. For example, if the user is identified as "highly motivated," the result is returned to the server. The input is the user's response data, and the output is the sentiment analysis result.
[0707] Step 4: Generating the next question
[0708] The server generates the next question based on the sentiment engine's analysis results. For example, it might decide on "When is the project completion date?" and send it to the terminal. The inputs are the sentiment analysis results and past user responses, and the output generates the next question.
[0709] Step 5: The user answers the following question.
[0710] The user answers the next question displayed on the terminal, "When is the project end date?", with "December 31, 2023". This answer is also sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[0711] Step 6: Accumulation and Analysis of Responses
[0712] The server stores all user responses collected to date and analyzes that data. This aggregates detailed project information. The input is all user response data, and the output is the analyzed project information.
[0713] Step 7: Task Identification
[0714] The server uses the analyzed project information to call the `derive_tasks` function to identify the necessary tasks. For example, tasks such as "Kick-off meeting for marketing plan creation" and "Completion of market research" are generated. The input is the analyzed project information, and the output is a list of identified tasks.
[0715] Step 8: Prioritizing based on emotions
[0716] The server takes the results of the emotion engine into consideration and adjusts the priority of each task. For example, if the user is feeling stressed, it sets "tasks that can be completed in a short time" as a high priority. The input is a list of tasks and the emotion analysis results, and the output is a list of tasks with adjusted priorities.
[0717] Step 9: Generate WBS
[0718] The server organizes a list of prioritized tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). The input is a list of prioritized tasks, and the output is the generated WBS.
[0719] Step 10: Provide the WBS
[0720] The server sends the generated WBS to the terminal, which then displays it to the user. The user reviews the completed WBS and uses it for project management. The input is the generated WBS, and the output is the WBS displayed on the terminal.
[0721] (Application Example 2)
[0722] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0723] Modern factory production management requires the efficient management of complex task schedules. However, generating work breakdown structures (WBS) and adjusting task priorities is time-consuming and labor-intensive. Furthermore, the emotional state of managers can affect production efficiency, and a lack of appropriate feedback and task adjustments can disrupt production. Therefore, there is a need for a system that can adaptively respond based on manager input and autonomously generate the optimal production schedule.
[0724] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for the user to input a question to the system, means for the server to generate the next question to be asked based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the emotion engine to recognize emotions from the user's answers and for the server to adaptively change the content of the questions based on the recognition result, means for the server to adjust the priority of tasks based on the emotions recognized by the emotion engine, and means for a factory robot to autonomously optimize production tasks based on the generated work breakdown structure and generate a work schedule. This enables efficient and adaptive production management while providing appropriate feedback according to the emotional state of the manager.
[0725] A "user" is someone who accesses the system, enters questions, and operates the system.
[0726] A "system" is a collection of devices and programs that enable users to identify necessary tasks by answering questions and generate and provide a Work Breakdown Structure (WBS).
[0727] A "server" is a device that receives user questions and answers, generates subsequent questions based on them, identifies tasks, and creates a Work Breakdown Structure (WBS).
[0728] "Means for entering questions" refers to an interface for users to input questions into a system, such as an input device like a keyboard or touchscreen.
[0729] "Means of collection" refers to devices or programs that have the function of receiving responses from users and storing them in a database or similar.
[0730] A "means for identifying tasks" refers to a device or program that has the function of identifying and listing the necessary tasks and processes based on the user's responses.
[0731] "Means of organizing into a hierarchical structure" refers to devices or programs that have the function of structuring identified tasks hierarchically and organizing them in a way that establishes a hierarchy of higher and lower levels.
[0732] A Work Breakdown Structure (WBS) is a structure that hierarchically breaks down and systematically organizes all the tasks in a particular project.
[0733] An "emotion engine" is an algorithm or program that analyzes and recognizes a user's emotional state based on their responses and text input.
[0734] "An adaptive modification mechanism" refers to a device or program that has the function of dynamically changing subsequent questions and feedback based on the user's emotions recognized by the emotion engine.
[0735] A "means for adjusting priorities" refers to a device or program that has the function of dynamically resetting task priorities based on the emotional results recognized by the emotion engine.
[0736] A "factory robot" is a mechanical device that operates autonomously within a factory and performs production tasks.
[0737] "Means for autonomously optimizing and generating work schedules" refers to devices or programs that have the function of autonomously optimizing production tasks and creating effective work schedules based on a generated Work Breakdown Structure (WBS) used by factory robots.
[0738] "Means of provision" refers to devices or programs that have the function of displaying the generated Work Breakdown Structure (WBS) to the user via a display device or the like.
[0739] Modes for carrying out the invention
[0740] System overall configuration and functions
[0741] The system of this invention comprises a user, a terminal, a server, an emotion engine, and a factory robot. The user accesses the system via the terminal and inputs answers to questions about production tasks. The server analyzes these answers, uses the emotion engine to recognize the user's emotional state, and adaptively generates the next questions. It also collects all answers to break down the tasks and provides the user with a generated Work Breakdown Structure (WBS). Furthermore, the factory robot autonomously optimizes the production tasks and generates a work schedule based on this WBS.
[0742] Hardware and software configuration
[0743] Hardware:
[0744] Smartphone (iOS or Android)
[0745] Factory robot control systems (PLCs, microcontrollers, etc.)
[0746] software:
[0747] Server-side: Programming languages such as Python and Ruby
[0748] Sentiment analysis API: For example, IBM Watson Tone Analyzer
[0749] Database: MySQL, PostgreSQL, etc.
[0750] Smartphone application frameworks: React Native and Flutter
[0751] Emotion recognition and task generation / adjustment
[0752] When a user answers questions about production, the response data is sent from the terminal to the server. The server is equipped with an emotion engine, which analyzes the user's emotional state. For example, the emotion engine recognizes emotions such as "stress," "joy," and "anger" from the text of the response.
[0753] Based on the perceived emotions, the server adaptively modifies the next questions it presents. For example, if the server detects that the user is experiencing severe stress, it may lower the difficulty of the questions or add encouraging messages.
[0754] The server identifies tasks from all collected responses and automatically adjusts priorities, taking into account the results of the emotion engine. This ensures that the generated WBS accurately reflects the user's emotional state, enabling optimized production management.
[0755] Autonomous optimization and scheduling of factory robots
[0756] The generated Work Breakdown Structure (WBS) is sent from the server to the factory robots. Based on this WBS, the factory robots autonomously optimize production tasks. They then generate an optimal work schedule and begin their activities accordingly. This system significantly reduces manual adjustments and is expected to improve production efficiency.
[0757] Specific example
[0758] For example, consider the case where the administrator enters the following information.
[0759] "We want to start a new production line."
[0760] "Don't worry about the progress."
[0761] "We will focus on quality checks."
[0762] In this case, the emotion engine recognizes "stress" and provides feedback such as "Don't worry about progress." The server then sends the generated WBS to the factory robot, which autonomously optimizes high-priority tasks focused on "quality checks."
[0763] In this way, efficient and adaptive production management is achieved while taking into account the emotional state of the users.
[0764] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0765] Step 1:
[0766] Users access the system using a terminal and answer questions about production tasks. The input is text data, such as "I want to start a new production line." The terminal sends this input to the server.
[0767] Step 2:
[0768] The server receives user input. The server analyzes the input data and sends it to the emotion engine to recognize the user's emotions. The input data is in text format, and after the emotion engine analyzes it, the recognized emotion data is output.
[0769] Step 3:
[0770] The server generates the next question to ask based on sentiment data from the sentiment engine. For example, if the server detects that the user is stressed, it will generate a question that includes an encouraging message such as "Don't worry about the progress." The generated question is sent to the terminal in text format.
[0771] Step 4:
[0772] The terminal displays the next question from the server to the user. The user answers the new question, and that answer is sent back to the server. The input is again text data.
[0773] Step 5:
[0774] The server collects all responses from users and identifies tasks based on them. Specifically, it analyzes the response data and lists the necessary tasks. For example, tasks such as "start the production line" and "quality check" might be identified.
[0775] Step 6:
[0776] The server organizes the identified tasks into a hierarchical structure to generate a Work Breakdown Structure (WBS). It also adjusts the priority of each task, taking into account the analysis results of the emotion engine. The generated WBS is output in a hierarchically organized list format.
[0777] Step 7:
[0778] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. The user can view the WBS on the screen and grasp the overall picture of the production tasks.
[0779] Step 8:
[0780] The server sends the generated Work Breakdown Structure (WBS) to the factory's robot control system. Based on this WBS, the robots autonomously optimize production tasks and generate work schedules. The optimized schedule is then executed as specific work instructions by the factory robot's control system.
[0781] Step 9:
[0782] Factory robots perform necessary production tasks according to the generated schedule. For example, if the quality check task is set as a high priority, the robot will perform the quality check first. The completed tasks are fed back to the server in real time.
[0783] This series of processing flows enables efficient and adaptive production management while taking into account the user's emotional state. This system aims to reduce user stress and improve production efficiency.
[0784] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0785] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0786] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0787] [Third Embodiment]
[0788] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0789] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0790] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0791] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0792] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0793] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0794] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0795] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0796] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0797] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0798] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0799] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0800] System overall configuration and functions
[0801] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[0802] User actions
[0803] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[0804] Terminal operation
[0805] The terminal receives user input and sends it to the server. It then displays the next question returned from the server and the generated WBS to the user.
[0806] Server Processing
[0807] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[0808] Explain the program's processing in natural language.
[0809] 1. Presenting questions and collecting answers:
[0810] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[0811] 2. Generating the next question:
[0812] The server analyzes the user's input and determines the next question to present. This question is then sent back to the terminal and presented to the user.
[0813] 3. Accumulating responses and identifying tasks:
[0814] User responses are accumulated on the server in real time, and once all questions are completed, the server extracts project tasks based on those responses. For example, if the project name is "Creating a Marketing Plan," a kickoff meeting will be generated as a task based on that name.
[0815] 4. Generating the WBS:
[0816] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered and presented in a visually easy-to-understand format.
[0817] 5. Provided by WBS:
[0818] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[0819] Specific example
[0820] Enter the project name and end date:
[0821] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0822] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0823] Task generation:
[0824] The server generates a task called "Marketing plan creation kickoff meeting".
[0825] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[0826] Presentation of WBS results:
[0827] The generated WBS is provided to the user, for example, as follows:
[0828] 1. Kick-off meeting for marketing plan creation
[0829] 2. Submit the final report by December 31, 2023.
[0830] In this way, users can automatically generate a project's WBS simply by inputting information interactively, significantly improving the efficiency of project management.
[0831] The following describes the processing flow.
[0832] Step 1:
[0833] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[0834] Step 2:
[0835] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[0836] Step 3:
[0837] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[0838] Step 4:
[0839] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[0840] Step 5:
[0841] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[0842] Step 6:
[0843] The server selects the next question (e.g., "When is the project start date?") and returns it to the terminal as a response.
[0844] Step 7:
[0845] The terminal presents the user with the next question received from the server. The user enters their answer, and the terminal sends that answer to the server via a POST request.
[0846] Step 8:
[0847] The process from Step 5 to Step 7 is repeated until the user has answered all questions. The server sequentially stores each user's answers in the `user_responses` dictionary.
[0848] Step 9:
[0849] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[0850] Step 10:
[0851] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[0852] Step 11:
[0853] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[0854] Step 12:
[0855] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[0856] This allows users to automatically generate and review a project's WBS (Work Breakdown Structure) while interactively inputting information.
[0857] (Example 1)
[0858] Next, we will describe Example 1. 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."
[0859] Traditional project management systems require users to manually define tasks and create work breakdown structures (WBS), which is extremely time-consuming. This leads to decreased project management efficiency and an increased likelihood of missed tasks and errors.
[0860] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0861] In this invention, the server includes means for the user to input answers to questions sequentially displayed to the system; means for the server to generate the next question to be asked based on the user's answers and present it to the user via a terminal; means for the server to collect answers from the user and identify tasks based on them; means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure; and means for the server to provide the work breakdown structure to the user via a terminal. This makes it possible to automatically generate a work breakdown structure without the user having to manually set tasks, significantly improving the efficiency of project management and preventing tasks from being missed or errors made.
[0862] A "user" is the entity that accesses the system and enters answers to questions.
[0863] A "terminal" is a device operated by a user that communicates with a server to exchange questions and answers.
[0864] A "server" is a central processing unit that analyzes user responses, generates the next question, identifies tasks, and creates a Work Breakdown Structure (WBS).
[0865] A "question" is an item generated by the server to collect detailed information about the project from the user and presented to the user via the terminal.
[0866] An "answer" is the information that a user enters in response to a question via their device.
[0867] A "task" is a specific item of work or task necessary for the progress of a project.
[0868] A Work Breakdown Structure (WBS) is a diagram or list that hierarchically organizes tasks in a visually clear manner to provide an overview of a project.
[0869] A "hierarchical structure" is a structure in which tasks are organized based on parent-child relationships and arranged in a step-by-step manner from higher to lower levels.
[0870] "Collection" refers to the process by which a server receives and stores responses from users sequentially.
[0871] "Generation" is the process by which a server creates new questions, tasks, and work breakdown structures based on the user's responses.
[0872] "Providing" refers to the server presenting the generated work breakdown structure and subsequent questions to the user via the terminal.
[0873] System overall configuration and functions
[0874] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[0875] User actions
[0876] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The terminal receives the user's answers and sends them to the server.
[0877] Terminal operation
[0878] The terminal receives input from the user and sends it to the server. It also receives the next question or the generated WBS from the server and displays it to the user. Specifically, the terminal processes the data sent from the server and displays the results on the screen.
[0879] Server Processing
[0880] The server receives user responses sent from the terminal and performs analysis. Based on the analysis results, it determines the next question to present and sends it to the terminal. After all questions have been answered, the server uses them to identify tasks and generate a Work Breakdown Structure (WBS). The generated WBS is then provided to the user via the terminal.
[0881] Hardware and software to be used
[0882] The system operates on standard PCs, smartphones, tablets, and servers connected to the internet. The main software used on the server side includes a generative AI model for generating questions and analyzing answers. This generative AI model dynamically generates the next question or extracts tasks based on the user's responses.
[0883] Specific example
[0884] Here are some specific examples of its use:
[0885] Enter the project name and end date:
[0886] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0887] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0888] Task generation:
[0889] The server generates a task called "Marketing plan creation kickoff meeting".
[0890] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[0891] Presentation of WBS results:
[0892] The generated WBS will be displayed on the terminal as shown below, for example.
[0893] 1. Kick-off meeting for marketing plan creation
[0894] 2. Submit the final report by December 31, 2023.
[0895] Example of a prompt
[0896] The following are examples of prompts to input into a generative AI model:
[0897] "Please enter the project details. The first question is, what is the project name?"
[0898] "Next, when is the project completion date?"
[0899] Thus, this system automatically identifies the necessary tasks and generates a work breakdown structure simply by the user answering the generated questions, significantly improving the efficiency of project management.
[0900] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0901] Step 1:
[0902] System startup and initial question presentation
[0903] When the system starts up, the server first performs initial setup and loads initial data. Next, it generates the first question and sends it to the terminal. Specifically, it uses a generation AI model to generate the question "What is the name of the project?" and sends it to the terminal. The terminal displays this received question to the user. At this point, the input is a "system startup and initial data loading request," and the output is a "question about the project name."
[0904] Step 2:
[0905] User input and submission of responses
[0906] The user uses the terminal's input interface to enter their answer to the first question. For example, they might answer "Create a marketing plan." When the user presses the submit button, the terminal sends this answer data to the server. At this point, the input is "User's answer (e.g., Create a marketing plan)" and the output is "Answer sent to server."
[0907] Step 3:
[0908] Generation and presentation of the following questions
[0909] The server analyzes the responses received from the user. A generative AI model is used for the analysis to determine the next question to present. For example, based on the response "Project name: Marketing plan creation," the server generates the next question "When is the project completion date?". This question is sent back to the terminal, which then displays the new question to the user. At this point, the input is "user response data (e.g., Marketing plan creation)" and the output is "next question (e.g., When is the project completion date?)."
[0910] Step 4:
[0911] Accumulating responses and identifying tasks
[0912] Each time a user answers multiple questions, the server sequentially stores each answer. After all questions have been answered, the server identifies tasks based on the collected answer data. For example, based on the answer "Project end date: December 31, 2023," it generates the task "Submit the final report by December 31, 2023." At this point, the input is "the accumulated user answers (e.g., marketing plan creation, December 31, 2023)," and the output is "a list of identified tasks."
[0913] Step 5:
[0914] WBS generation
[0915] The server organizes the identified tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). For example, it visually organizes tasks in the format of "1. Kick-off meeting for marketing plan creation" and "2. Submit final report by December 31, 2023." At this point, the input is a "list of tasks," and the output is the "data structure of the WBS."
[0916] Step 6:
[0917] Providing WBS to users
[0918] The server sends the generated WBS to the terminal. The terminal displays the received WBS to the user. This allows the user to visually grasp the overall picture of the project. At this point, the input is the "data structure of the generated WBS," and the output is the "display of the WBS to the user."
[0919] In this way, the system automatically generates and provides a project work breakdown structure to the user simply by having them input their answers. By dynamically generating questions through the prompts of the generating AI model, the efficiency of project management can be significantly improved.
[0920] (Application Example 1)
[0921] Next, we will explain Application Example 1. In the following explanation, 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."
[0922] Conventional industrial autonomous machines lack systems for generating Work Breakdown Structures (WBS) and managing tasks based on them, making efficient work execution difficult. Furthermore, they require dedicated programs, and autonomous execution based on WBS automatically generated from user input is challenging. Additionally, setting appropriate deadlines and managing progress for work tasks is cumbersome, potentially reducing work efficiency.
[0923] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0924] In this invention, the server includes means for a user to input a question to the system, means for the server to generate the next question to ask based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, and means for an industrial autonomous machine to perform work based on the generated work breakdown structure. This enables the industrial autonomous machine to perform work efficiently and enables automated task management based on user input.
[0925] A "user" is an individual or organization that enters a question into the system and provides an answer.
[0926] A "server" is a device or computer system that receives and analyzes questions and answers from users and generates the next question to ask.
[0927] A "task" is a specific work item related to a particular project or task, and is an item that the server identifies based on the user's responses.
[0928] A "hierarchical structure" is a structure for organizing tasks, a method of clearly organizing work content by arranging tasks hierarchically, such as main tasks and subtasks.
[0929] A Work Breakdown Structure (WBS) is a collection of tasks organized in a hierarchical structure, systematically breaking down the entire project's work into a manageable format.
[0930] "Industrial autonomous equipment" refers to machines or systems that perform tasks automatically and operate autonomously based on user input or a Work Breakdown Structure (WBS) provided by a server.
[0931] Modes for carrying out the invention
[0932] System overall configuration and functions
[0933] This system automatically identifies necessary tasks based on the user's answers to questions, generates and provides a Work Breakdown Structure (WBS), and aims to enable autonomous industrial machines to perform tasks based on this WBS. Its main components are the user, the terminal, and the server.
[0934] User actions
[0935] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[0936] Terminal operation
[0937] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user. For this reason, mobile devices such as smartphones and tablets are suitable as terminals.
[0938] Server Processing
[0939] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. The server uses a generative AI model (e.g., GPT-3) to run an algorithm that generates the next question based on the user's responses. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[0940] Operation of industrial autonomous equipment
[0941] Based on the generated Work Breakdown Structure (WBS), autonomous industrial equipment automatically executes tasks. This equipment receives task information from a server and performs tasks in the optimal order and timing. This eliminates the need for efficient work management and detailed task adjustments by humans in the factory.
[0942] Specific hardware and software used
[0943] Hardware: Smartphones, tablets, autonomous factory equipment
[0944] Software: Generative AI models (e.g., GPT-3), data processing libraries (e.g., Python's requests library and json library)
[0945] Specific example
[0946] For example, a user might be asked "What is the name of the project?" using their smartphone and answer "New setup of Line A." They might also be asked "When is the project completion date?" and answer "December 31, 2023." Based on this information, the server automatically identifies the tasks required to set up Line A and assigns those tasks to industrial autonomous equipment.
[0947] Example of a prompt
[0948] The following is an example of a specific prompt message:
[0949] What is the name of the project?
[0950] When is the project completion date?
[0951] How many shifts are there on Line A?
[0952] What are this month's main products?
[0953] In this way, a system is created that streamlines task management for industrial autonomous equipment simply by having the user input information in an interactive format.
[0954] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0955] Step 1:
[0956] When a user accesses the system using a terminal, the server sends an initial question to the terminal. The terminal displays this question to the user and accepts the user's response. In this process, the input to the terminal is information about the user's project, and the output is that this information being sent to the server.
[0957] Step 2:
[0958] The server receives user responses and analyzes the data. A generative AI model (e.g., GPT-3) is used for the analysis to generate the next question to ask. The input is the user's response data, and the output is the generated next question.
[0959] Step 3:
[0960] The server sends the next generated question to the terminal, which then displays it to the user. The user answers this question, and the answer is sent back to the server. This cycle is repeated until all the necessary project information is collected. The input is the question sent from the server, and the output is the user's answer.
[0961] Step 4:
[0962] The server collects all response data from users and identifies the final project tasks. Based on the analysis results, the server organizes each project task into a hierarchical structure. At this stage, the input is the entire user response data, and the output is a detailed list of tasks.
[0963] Step 5:
[0964] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. This allows the user to grasp the overall picture of the project. The input is the WBS generated on the server, and the output is its display on the terminal.
[0965] Step 6:
[0966] The terminal obtains user approval and sends the final WBS to the industrial autonomous machine. The autonomous machine automatically executes the work based on this WBS. The input is the user-approved WBS, and the output is the task assignment to the autonomous machine.
[0967] Step 7:
[0968] Industrial autonomous machines execute tasks in the optimal order and timing based on the received Work Breakdown Structure (WBS). The machines feed back progress to the server, which readjusts tasks as needed. The input is task information based on the WBS, and the output is the completed work.
[0969] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0970] System overall configuration and functions
[0971] This system identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from user input and adapts the questions and adjusts task priorities accordingly. The main components are the user, terminal, server, and emotion engine.
[0972] User actions
[0973] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". Furthermore, the sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[0974] Terminal operation
[0975] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[0976] Server Processing
[0977] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[0978] Emotional Engine Processing
[0979] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[0980] Explain the program's processing in natural language.
[0981] 1. Presenting questions and collecting answers:
[0982] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[0983] 2. Recognizing emotions and generating the next question:
[0984] The server receives user input, and the emotion engine analyzes that input to recognize the user's emotional state. Based on this, the server determines the next question to ask and sends it to the terminal.
[0985] 3. Accumulating responses and presenting adaptive questions:
[0986] The system continuously accumulates user responses and adaptively modifies the questions based on the analysis results of the emotion engine. For example, if a user is experiencing stress, the difficulty of the questions may be lowered or encouraging messages may be added.
[0987] 4. Task generation and prioritization considering emotions:
[0988] After all the answers to the questions have been collected, the server uses those answers to call the `derive_tasks` function to identify tasks. Furthermore, it adjusts the priority of each task based on the emotions recognized by the emotion engine.
[0989] 5. Generating the WBS:
[0990] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered, and prioritization based on personal preference is also reflected.
[0991] 6. Provided by WBS:
[0992] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[0993] Specific example
[0994] Enter the project name and end date:
[0995] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[0996] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[0997] Recognition and adaptive processing of emotions:
[0998] If the emotion engine detects "stress" when a user responds, the server will simplify the next question and display a message such as, "Don't worry about the progress."
[0999] Task generation and prioritization:
[1000] The server generates a task called "Marketing plan creation kickoff meeting" and, taking the results of the sentiment engine into consideration, sets the task "Submit final report by December 31, 2023" as a high-priority task.
[1001] Presentation of WBS results:
[1002] The generated WBS is provided to the user, for example, as follows:
[1003] 1. Kick-off meeting for marketing plan creation
[1004] 2. Submit the final report by December 31, 2023.
[1005] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, resulting in efficient and less stressful project management.
[1006] The following describes the processing flow.
[1007] Step 1:
[1008] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[1009] Step 2:
[1010] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[1011] Step 3:
[1012] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[1013] Step 4:
[1014] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[1015] Step 5:
[1016] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[1017] Step 6:
[1018] The server invokes an emotion engine to analyze the user's responses and determine their emotions. For example, it can recognize emotions such as "excitement" or "doubt" from the user's input text.
[1019] Step 7:
[1020] The server selects the next question to ask (e.g., "When is the project start date?") based on the user's emotional state. If the emotion engine detects "stress," the server makes adjustments, such as simplifying the question.
[1021] Step 8:
[1022] The server returns the next selected question as a response to the terminal. The terminal then presents this question to the user.
[1023] Step 9:
[1024] The user answers the following question, and the device sends it back to the server via a POST request. The server also saves this answer to user_responses.
[1025] Step 10:
[1026] The process from steps 6 to 9 is repeated until the user has answered all the questions. Each time, the emotion engine analyzes the user's emotional state, and the server adaptively modifies the questions.
[1027] Step 11:
[1028] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[1029] Step 12:
[1030] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[1031] Step 13:
[1032] The server prioritizes tasks based on the results of the emotion engine's analysis. For example, if a user is feeling "anxious," it will prioritize tasks that need immediate attention.
[1033] Step 14:
[1034] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[1035] Step 15:
[1036] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[1037] This allows users to input information interactively, receive support tailored to their emotional state, and automatically generate and review the project's Work Breakdown Structure (WBS).
[1038] (Example 2)
[1039] Next, we will describe Example 2. 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."
[1040] In traditional project management systems, manually entering project details can be burdensome for users. This burden is especially great when users are emotionally unstable. Against this backdrop, there has been a need for a system that allows users to easily and efficiently identify tasks and generate an appropriate Work Breakdown Structure (WBS).
[1041] The identification processing 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 the user to input a question to the system, means for the server to generate the next question to be asked based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the server to recognize emotions from the user's answers and adaptively change the content of the questions based on those emotions, and means for the server to adjust the priority of tasks taking emotions into consideration. As a result, the user can efficiently identify project tasks and generate an appropriate WBS while receiving support tailored to their emotions.
[1042] A "user" refers to a person who operates the system and inputs answers to questions.
[1043] A "server" refers to a central device or computer system that receives input from users and performs tasks such as generating questions, analyzing answers, identifying tasks, and creating work breakdown structures.
[1044] An "emotion engine" refers to software or algorithms that analyze emotions from user responses and adaptively change the system's behavior based on that information.
[1045] "Means of inputting questions" refers to the interface through which users input answers to the system via text or voice. This interface includes keyboards, microphones, and other similar devices.
[1046] "Means for generating the next question to ask" refers to a function that allows the server to determine the optimal next question based on the user's input and present it to the user.
[1047] "Means of collecting responses" refers to the function of receiving user input and sending it to the server. This function is implemented using communication modules and databases.
[1048] "Methods for identifying tasks" refers to algorithms or programs that identify specific work items for a project based on user input and list them.
[1049] "Means for organizing tasks into a hierarchical structure" refers to a function for arranging identified tasks into a logical hierarchical structure and creating a work breakdown structure.
[1050] A "Work Breakdown Structure (WBS)" refers to a framework for hierarchically organizing and visually displaying all the tasks that make up a project.
[1051] "Means of recognizing emotions" refers to a function that analyzes a user's text input or voice response to identify their emotions and state. This function utilizes natural language processing and machine learning.
[1052] "Means of adaptively changing question content" refers to a function that adjusts the content and difficulty level of the next question displayed according to the recognized emotional state of the user.
[1053] "Means for adjusting priorities" refers to features that take into account the user's emotional state, re-evaluate the importance and urgency of generated tasks, and arrange them in an appropriate order.
[1054] System overall configuration and functions
[1055] This system identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from user input and adapts the questions and adjusts task priorities accordingly. The main components are the user, terminal, server, and emotion engine.
[1056] User actions
[1057] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[1058] Terminal operation
[1059] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[1060] Server Processing
[1061] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[1062] Emotional Engine Processing
[1063] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[1064] Specific example
[1065] Enter the project name and end date:
[1066] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan." Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[1067] Recognition and adaptive processing of emotions:
[1068] If the emotion engine detects "stress" when a user responds, the server will simplify the next question and display a message such as, "Don't worry about the progress."
[1069] Task generation and prioritization:
[1070] The server generates a task called "Marketing plan creation kickoff meeting" and, taking the results of the sentiment engine into consideration, sets the task "Submit final report by December 31, 2023" as a high-priority task.
[1071] Presentation of WBS results:
[1072] The generated WBS is provided to the user, for example, as follows:
[1073] 1. Kick-off meeting for marketing plan creation
[1074] 2. Submit the final report by December 31, 2023.
[1075] Example of a prompt:
[1076] - "What is the name of the project?"
[1077] - "When is the project completion date?"
[1078] - "How would you describe your current emotional state in one word?"
[1079] - "Are there any tasks you'd particularly like to prioritize?"
[1080] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, enabling efficient and stress-free project management.
[1081] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1082] Step 1: Access the user's system
[1083] The user accesses the system using a terminal. Upon access, the server initiates a session for the user, generates the first question "What is the name of the project?", and sends it to the terminal. The input is the user's access request, and the output is the generated first question.
[1084] Step 2: The user answers the question.
[1085] The user answers the question displayed on the terminal, "What is the name of the project?", with "Creating a marketing plan". This answer is sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[1086] Step 3: Emotional analysis using the emotion engine
[1087] The server sends the received user responses to the sentiment engine for sentiment analysis. For example, if the user is identified as "highly motivated," the result is returned to the server. The input is the user's response data, and the output is the sentiment analysis result.
[1088] Step 4: Generating the next question
[1089] The server generates the next question based on the sentiment engine's analysis results. For example, it might decide on "When is the project completion date?" and send it to the terminal. The inputs are the sentiment analysis results and past user responses, and the output generates the next question.
[1090] Step 5: The user answers the following question.
[1091] The user answers the next question displayed on the terminal, "When is the project end date?", with "December 31, 2023". This answer is also sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[1092] Step 6: Accumulation and Analysis of Responses
[1093] The server stores all user responses collected to date and analyzes that data. This aggregates detailed project information. The input is all user response data, and the output is the analyzed project information.
[1094] Step 7: Task Identification
[1095] The server uses the analyzed project information to call the `derive_tasks` function to identify the necessary tasks. For example, tasks such as "Kick-off meeting for marketing plan creation" and "Completion of market research" are generated. The input is the analyzed project information, and the output is a list of identified tasks.
[1096] Step 8: Prioritizing based on emotions
[1097] The server takes the results of the emotion engine into consideration and adjusts the priority of each task. For example, if the user is feeling stressed, it sets "tasks that can be completed in a short time" as a high priority. The input is a list of tasks and the emotion analysis results, and the output is a list of tasks with adjusted priorities.
[1098] Step 9: Generate WBS
[1099] The server organizes a list of prioritized tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). The input is a list of prioritized tasks, and the output is the generated WBS.
[1100] Step 10: Provide the WBS
[1101] The server sends the generated WBS to the terminal, which then displays it to the user. The user reviews the completed WBS and uses it for project management. The input is the generated WBS, and the output is the WBS displayed on the terminal.
[1102] (Application Example 2)
[1103] Next, we will explain application example 2. In the following explanation, 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."
[1104] Modern factory production management requires the efficient management of complex task schedules. However, generating work breakdown structures (WBS) and adjusting task priorities is time-consuming and labor-intensive. Furthermore, the emotional state of managers can affect production efficiency, and a lack of appropriate feedback and task adjustments can disrupt production. Therefore, there is a need for a system that can adaptively respond based on manager input and autonomously generate the optimal production schedule.
[1105] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for the user to input a question to the system, means for the server to generate the next question to be asked based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the emotion engine to recognize emotions from the user's answers and for the server to adaptively change the content of the questions based on the recognition result, means for the server to adjust the priority of tasks based on the emotions recognized by the emotion engine, and means for a factory robot to autonomously optimize production tasks based on the generated work breakdown structure and generate a work schedule. This enables efficient and adaptive production management while providing appropriate feedback according to the emotional state of the manager.
[1106] A "user" is someone who accesses the system, enters questions, and operates the system.
[1107] A "system" is a collection of devices and programs that enable users to identify necessary tasks by answering questions and generate and provide a Work Breakdown Structure (WBS).
[1108] A "server" is a device that receives user questions and answers, generates subsequent questions based on them, identifies tasks, and creates a Work Breakdown Structure (WBS).
[1109] "Means for entering questions" refers to an interface for users to input questions into a system, such as an input device like a keyboard or touchscreen.
[1110] "Means of collection" refers to devices or programs that have the function of receiving responses from users and storing them in a database or similar.
[1111] A "means for identifying tasks" refers to a device or program that has the function of identifying and listing the necessary tasks and processes based on the user's responses.
[1112] "Means of organizing into a hierarchical structure" refers to devices or programs that have the function of structuring identified tasks hierarchically and organizing them in a way that establishes a hierarchy of higher and lower levels.
[1113] A Work Breakdown Structure (WBS) is a structure that hierarchically breaks down and systematically organizes all the tasks in a particular project.
[1114] An "emotion engine" is an algorithm or program that analyzes and recognizes a user's emotional state based on their responses and text input.
[1115] "An adaptive modification mechanism" refers to a device or program that has the function of dynamically changing subsequent questions and feedback based on the user's emotions recognized by the emotion engine.
[1116] A "means for adjusting priorities" refers to a device or program that has the function of dynamically resetting task priorities based on the emotional results recognized by the emotion engine.
[1117] A "factory robot" is a mechanical device that operates autonomously within a factory and performs production tasks.
[1118] "Means for autonomously optimizing and generating work schedules" refers to devices or programs that have the function of autonomously optimizing production tasks and creating effective work schedules based on a generated Work Breakdown Structure (WBS) used by factory robots.
[1119] "Means of provision" refers to devices or programs that have the function of displaying the generated Work Breakdown Structure (WBS) to the user via a display device or the like.
[1120] Modes for carrying out the invention
[1121] System overall configuration and functions
[1122] The system of this invention comprises a user, a terminal, a server, an emotion engine, and a factory robot. The user accesses the system via the terminal and inputs answers to questions about production tasks. The server analyzes these answers, uses the emotion engine to recognize the user's emotional state, and adaptively generates the next questions. It also collects all answers to break down the tasks and provides the user with a generated Work Breakdown Structure (WBS). Furthermore, the factory robot autonomously optimizes the production tasks and generates a work schedule based on this WBS.
[1123] Hardware and software configuration
[1124] Hardware:
[1125] Smartphone (iOS or Android)
[1126] Factory robot control systems (PLCs, microcontrollers, etc.)
[1127] software:
[1128] Server-side: Programming languages such as Python and Ruby
[1129] Sentiment analysis API: For example, IBM Watson Tone Analyzer
[1130] Database: MySQL, PostgreSQL, etc.
[1131] Smartphone application frameworks: React Native and Flutter
[1132] Emotion recognition and task generation / adjustment
[1133] When a user answers questions about production, the response data is sent from the terminal to the server. The server is equipped with an emotion engine, which analyzes the user's emotional state. For example, the emotion engine recognizes emotions such as "stress," "joy," and "anger" from the text of the response.
[1134] Based on the perceived emotions, the server adaptively modifies the next questions it presents. For example, if the server detects that the user is experiencing severe stress, it may lower the difficulty of the questions or add encouraging messages.
[1135] The server identifies tasks from all collected responses and automatically adjusts priorities, taking into account the results of the emotion engine. This ensures that the generated WBS accurately reflects the user's emotional state, enabling optimized production management.
[1136] Autonomous optimization and scheduling of factory robots
[1137] The generated Work Breakdown Structure (WBS) is sent from the server to the factory robots. Based on this WBS, the factory robots autonomously optimize production tasks. They then generate an optimal work schedule and begin their activities accordingly. This system significantly reduces manual adjustments and is expected to improve production efficiency.
[1138] Specific example
[1139] For example, consider the case where the administrator enters the following information.
[1140] "We want to start a new production line."
[1141] "Don't worry about the progress."
[1142] "We will focus on quality checks."
[1143] In this case, the emotion engine recognizes "stress" and provides feedback such as "Don't worry about progress." The server then sends the generated WBS to the factory robot, which autonomously optimizes high-priority tasks focused on "quality checks."
[1144] In this way, efficient and adaptive production management is achieved while taking into account the emotional state of the users.
[1145] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1146] Step 1:
[1147] Users access the system using a terminal and answer questions about production tasks. The input is text data, such as "I want to start a new production line." The terminal sends this input to the server.
[1148] Step 2:
[1149] The server receives user input. The server analyzes the input data and sends it to the emotion engine to recognize the user's emotions. The input data is in text format, and after the emotion engine analyzes it, the recognized emotion data is output.
[1150] Step 3:
[1151] The server generates the next question to ask based on sentiment data from the sentiment engine. For example, if the server detects that the user is stressed, it will generate a question that includes an encouraging message such as "Don't worry about the progress." The generated question is sent to the terminal in text format.
[1152] Step 4:
[1153] The terminal displays the next question from the server to the user. The user answers the new question, and that answer is sent back to the server. The input is again text data.
[1154] Step 5:
[1155] The server collects all responses from users and identifies tasks based on them. Specifically, it analyzes the response data and lists the necessary tasks. For example, tasks such as "start the production line" and "quality check" might be identified.
[1156] Step 6:
[1157] The server organizes the identified tasks into a hierarchical structure to generate a Work Breakdown Structure (WBS). It also adjusts the priority of each task, taking into account the analysis results of the emotion engine. The generated WBS is output in a hierarchically organized list format.
[1158] Step 7:
[1159] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. The user can view the WBS on the screen and grasp the overall picture of the production tasks.
[1160] Step 8:
[1161] The server sends the generated Work Breakdown Structure (WBS) to the factory's robot control system. Based on this WBS, the robots autonomously optimize production tasks and generate work schedules. The optimized schedule is then executed as specific work instructions by the factory robot's control system.
[1162] Step 9:
[1163] Factory robots perform necessary production tasks according to the generated schedule. For example, if the quality check task is set as a high priority, the robot will perform the quality check first. The completed tasks are fed back to the server in real time.
[1164] This series of processing flows enables efficient and adaptive production management while taking into account the user's emotional state. This system aims to reduce user stress and improve production efficiency.
[1165] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1166] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1167] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1168] [Fourth Embodiment]
[1169] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1170] As shown in Figure 7, the 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.
[1171] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1172] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1173] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1174] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1175] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1176] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive 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 robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1177] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1178] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[1179] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1180] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1181] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1182] System overall configuration and functions
[1183] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[1184] User actions
[1185] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[1186] Terminal operation
[1187] The terminal receives user input and sends it to the server. It then displays the next question returned from the server and the generated WBS to the user.
[1188] Server Processing
[1189] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[1190] Explain the program's processing in natural language.
[1191] 1. Presenting questions and collecting answers:
[1192] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[1193] 2. Generating the next question:
[1194] The server analyzes the user's input and determines the next question to present. This question is then sent back to the terminal and presented to the user.
[1195] 3. Accumulating responses and identifying tasks:
[1196] User responses are accumulated on the server in real time, and once all questions are completed, the server extracts project tasks based on those responses. For example, if the project name is "Creating a Marketing Plan," a kickoff meeting will be generated as a task based on that name.
[1197] 4. Generating the WBS:
[1198] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered and presented in a visually easy-to-understand format.
[1199] 5. Provided by WBS:
[1200] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[1201] Specific example
[1202] Enter the project name and end date:
[1203] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[1204] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[1205] Task generation:
[1206] The server generates a task called "Marketing plan creation kickoff meeting".
[1207] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[1208] Presentation of WBS results:
[1209] The generated WBS is provided to the user, for example, as follows:
[1210] 1. Kick-off meeting for marketing plan creation
[1211] 2. Submit the final report by December 31, 2023.
[1212] In this way, users can automatically generate a project's WBS simply by inputting information interactively, significantly improving the efficiency of project management.
[1213] The following describes the processing flow.
[1214] Step 1:
[1215] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[1216] Step 2:
[1217] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[1218] Step 3:
[1219] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[1220] Step 4:
[1221] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[1222] Step 5:
[1223] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[1224] Step 6:
[1225] The server selects the next question (e.g., "When is the project start date?") and returns it to the terminal as a response.
[1226] Step 7:
[1227] The terminal presents the user with the next question received from the server. The user enters their answer, and the terminal sends that answer to the server via a POST request.
[1228] Step 8:
[1229] The process from Step 5 to Step 7 is repeated until the user has answered all questions. The server sequentially stores each user's answers in the `user_responses` dictionary.
[1230] Step 9:
[1231] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[1232] Step 10:
[1233] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[1234] Step 11:
[1235] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[1236] Step 12:
[1237] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[1238] This allows users to automatically generate and review a project's WBS (Work Breakdown Structure) while interactively inputting information.
[1239] (Example 1)
[1240] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1241] Traditional project management systems require users to manually define tasks and create work breakdown structures (WBS), which is extremely time-consuming. This leads to decreased project management efficiency and an increased likelihood of missed tasks and errors.
[1242] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1243] In this invention, the server includes means for the user to input answers to questions sequentially displayed to the system; means for the server to generate the next question to be asked based on the user's answers and present it to the user via a terminal; means for the server to collect answers from the user and identify tasks based on them; means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure; and means for the server to provide the work breakdown structure to the user via a terminal. This makes it possible to automatically generate a work breakdown structure without the user having to manually set tasks, significantly improving the efficiency of project management and preventing tasks from being missed or errors made.
[1244] A "user" is the entity that accesses the system and enters answers to questions.
[1245] A "terminal" is a device operated by a user that communicates with a server to exchange questions and answers.
[1246] A "server" is a central processing unit that analyzes user responses, generates the next question, identifies tasks, and creates a Work Breakdown Structure (WBS).
[1247] A "question" is an item generated by the server to collect detailed information about the project from the user and presented to the user via the terminal.
[1248] An "answer" is the information that a user enters in response to a question via their device.
[1249] A "task" is a specific item of work or task necessary for the progress of a project.
[1250] A Work Breakdown Structure (WBS) is a diagram or list that hierarchically organizes tasks in a visually clear manner to provide an overview of a project.
[1251] A "hierarchical structure" is a structure in which tasks are organized based on parent-child relationships and arranged in a step-by-step manner from higher to lower levels.
[1252] "Collection" refers to the process by which a server receives and stores responses from users sequentially.
[1253] "Generation" is the process by which a server creates new questions, tasks, and work breakdown structures based on the user's responses.
[1254] "Providing" refers to the server presenting the generated work breakdown structure and subsequent questions to the user via the terminal.
[1255] System overall configuration and functions
[1256] This system automatically identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Its main components are the user, the terminal, and the server.
[1257] User actions
[1258] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The terminal receives the user's answers and sends them to the server.
[1259] Terminal operation
[1260] The terminal receives input from the user and sends it to the server. It also receives the next question or the generated WBS from the server and displays it to the user. Specifically, the terminal processes the data sent from the server and displays the results on the screen.
[1261] Server Processing
[1262] The server receives user responses sent from the terminal and performs analysis. Based on the analysis results, it determines the next question to present and sends it to the terminal. After all questions have been answered, the server uses them to identify tasks and generate a Work Breakdown Structure (WBS). The generated WBS is then provided to the user via the terminal.
[1263] Hardware and software to be used
[1264] The system operates on standard PCs, smartphones, tablets, and servers connected to the internet. The main software used on the server side includes a generative AI model for generating questions and analyzing answers. This generative AI model dynamically generates the next question or extracts tasks based on the user's responses.
[1265] Specific example
[1266] Here are some specific examples of its use:
[1267] Enter the project name and end date:
[1268] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[1269] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[1270] Task generation:
[1271] The server generates a task called "Marketing plan creation kickoff meeting".
[1272] Additionally, a task is generated stating, "Submit the final report by December 31, 2023."
[1273] Presentation of WBS results:
[1274] The generated WBS will be displayed on the terminal as shown below, for example.
[1275] 1. Kick-off meeting for marketing plan creation
[1276] 2. Submit the final report by December 31, 2023.
[1277] Example of a prompt
[1278] The following are examples of prompts to input into a generative AI model:
[1279] "Please enter the project details. The first question is, what is the project name?"
[1280] "Next, when is the project completion date?"
[1281] Thus, this system automatically identifies the necessary tasks and generates a work breakdown structure simply by the user answering the generated questions, significantly improving the efficiency of project management.
[1282] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1283] Step 1:
[1284] System startup and initial question presentation
[1285] When the system starts up, the server first performs initial setup and loads initial data. Next, it generates the first question and sends it to the terminal. Specifically, it uses a generation AI model to generate the question "What is the name of the project?" and sends it to the terminal. The terminal displays this received question to the user. At this point, the input is a "system startup and initial data loading request," and the output is a "question about the project name."
[1286] Step 2:
[1287] User input and submission of responses
[1288] The user uses the terminal's input interface to enter their answer to the first question. For example, they might answer "Create a marketing plan." When the user presses the submit button, the terminal sends this answer data to the server. At this point, the input is "User's answer (e.g., Create a marketing plan)" and the output is "Answer sent to server."
[1289] Step 3:
[1290] Generation and presentation of the following questions
[1291] The server analyzes the responses received from the user. A generative AI model is used for the analysis to determine the next question to present. For example, based on the response "Project name: Marketing plan creation," the server generates the next question "When is the project completion date?". This question is sent back to the terminal, which then displays the new question to the user. At this point, the input is "user response data (e.g., Marketing plan creation)" and the output is "next question (e.g., When is the project completion date?)."
[1292] Step 4:
[1293] Accumulating responses and identifying tasks
[1294] Each time a user answers multiple questions, the server sequentially stores each answer. After all questions have been answered, the server identifies tasks based on the collected answer data. For example, based on the answer "Project end date: December 31, 2023," it generates the task "Submit the final report by December 31, 2023." At this point, the input is "the accumulated user answers (e.g., marketing plan creation, December 31, 2023)," and the output is "a list of identified tasks."
[1295] Step 5:
[1296] WBS generation
[1297] The server organizes the identified tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). For example, it visually organizes tasks in the format of "1. Kick-off meeting for marketing plan creation" and "2. Submit final report by December 31, 2023." At this point, the input is a "list of tasks," and the output is the "data structure of the WBS."
[1298] Step 6:
[1299] Providing WBS to users
[1300] The server sends the generated WBS to the terminal. The terminal displays the received WBS to the user. This allows the user to visually grasp the overall picture of the project. At this point, the input is the "data structure of the generated WBS," and the output is the "display of the WBS to the user."
[1301] In this way, the system automatically generates and provides a project work breakdown structure to the user simply by having them input their answers. By dynamically generating questions through the prompts of the generating AI model, the efficiency of project management can be significantly improved.
[1302] (Application Example 1)
[1303] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1304] Conventional industrial autonomous machines lack systems for generating Work Breakdown Structures (WBS) and managing tasks based on them, making efficient work execution difficult. Furthermore, they require dedicated programs, and autonomous execution based on WBS automatically generated from user input is challenging. Additionally, setting appropriate deadlines and managing progress for work tasks is cumbersome, potentially reducing work efficiency.
[1305] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1306] In this invention, the server includes means for a user to input a question to the system, means for the server to generate the next question to ask based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, and means for an industrial autonomous machine to perform work based on the generated work breakdown structure. This enables the industrial autonomous machine to perform work efficiently and enables automated task management based on user input.
[1307] A "user" is an individual or organization that enters a question into the system and provides an answer.
[1308] A "server" is a device or computer system that receives and analyzes questions and answers from users and generates the next question to ask.
[1309] A "task" is a specific work item related to a particular project or task, and is an item that the server identifies based on the user's responses.
[1310] A "hierarchical structure" is a structure for organizing tasks, a method of clearly organizing work content by arranging tasks hierarchically, such as main tasks and subtasks.
[1311] A Work Breakdown Structure (WBS) is a collection of tasks organized in a hierarchical structure, systematically breaking down the entire project's work into a manageable format.
[1312] "Industrial autonomous equipment" refers to machines or systems that perform tasks automatically and operate autonomously based on user input or a Work Breakdown Structure (WBS) provided by a server.
[1313] Modes for carrying out the invention
[1314] System overall configuration and functions
[1315] This system automatically identifies necessary tasks based on the user's answers to questions, generates and provides a Work Breakdown Structure (WBS), and aims to enable autonomous industrial machines to perform tasks based on this WBS. Its main components are the user, the terminal, and the server.
[1316] User actions
[1317] Users access the system via a terminal and answer questions presented sequentially. The questions are designed to collect detailed project information and include, for example, "What is the name of the project?" and "When is the project completion date?"
[1318] Terminal operation
[1319] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user. For this reason, mobile devices such as smartphones and tablets are suitable as terminals.
[1320] Server Processing
[1321] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. The server uses a generative AI model (e.g., GPT-3) to run an algorithm that generates the next question based on the user's responses. After collecting all of the user's responses, the server identifies the project tasks based on them and generates a Work Breakdown Structure (WBS). The generated WBS is then provided to the user again via the terminal.
[1322] Operation of industrial autonomous equipment
[1323] Based on the generated Work Breakdown Structure (WBS), autonomous industrial equipment automatically executes tasks. This equipment receives task information from a server and performs tasks in the optimal order and timing. This eliminates the need for efficient work management and detailed task adjustments by humans in the factory.
[1324] Specific hardware and software used
[1325] Hardware: Smartphones, tablets, autonomous factory equipment
[1326] Software: Generative AI models (e.g., GPT-3), data processing libraries (e.g., Python's requests library and json library)
[1327] Specific example
[1328] For example, a user might be asked "What is the name of the project?" using their smartphone and answer "New setup of Line A." They might also be asked "When is the project completion date?" and answer "December 31, 2023." Based on this information, the server automatically identifies the tasks required to set up Line A and assigns those tasks to industrial autonomous equipment.
[1329] Example of a prompt
[1330] The following is an example of a specific prompt message:
[1331] What is the name of the project?
[1332] When is the project completion date?
[1333] How many shifts are there on Line A?
[1334] What are this month's main products?
[1335] In this way, a system is created that streamlines task management for industrial autonomous equipment simply by having the user input information in an interactive format.
[1336] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1337] Step 1:
[1338] When a user accesses the system using a terminal, the server sends an initial question to the terminal. The terminal displays this question to the user and accepts the user's response. In this process, the input to the terminal is information about the user's project, and the output is that this information being sent to the server.
[1339] Step 2:
[1340] The server receives user responses and analyzes the data. A generative AI model (e.g., GPT-3) is used for the analysis to generate the next question to ask. The input is the user's response data, and the output is the generated next question.
[1341] Step 3:
[1342] The server sends the next generated question to the terminal, which then displays it to the user. The user answers this question, and the answer is sent back to the server. This cycle is repeated until all the necessary project information is collected. The input is the question sent from the server, and the output is the user's answer.
[1343] Step 4:
[1344] The server collects all response data from users and identifies the final project tasks. Based on the analysis results, the server organizes each project task into a hierarchical structure. At this stage, the input is the entire user response data, and the output is a detailed list of tasks.
[1345] Step 5:
[1346] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. This allows the user to grasp the overall picture of the project. The input is the WBS generated on the server, and the output is its display on the terminal.
[1347] Step 6:
[1348] The terminal obtains user approval and sends the final WBS to the industrial autonomous machine. The autonomous machine automatically executes the work based on this WBS. The input is the user-approved WBS, and the output is the task assignment to the autonomous machine.
[1349] Step 7:
[1350] Industrial autonomous machines execute tasks in the optimal order and timing based on the received Work Breakdown Structure (WBS). The machines feed back progress to the server, which readjusts tasks as needed. The input is task information based on the WBS, and the output is the completed work.
[1351] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1352] System overall configuration and functions
[1353] This system identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from user input and adapts the questions and adjusts task priorities accordingly. The main components are the user, terminal, server, and emotion engine.
[1354] User actions
[1355] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". Furthermore, the sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[1356] Terminal operation
[1357] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[1358] Server Processing
[1359] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[1360] Emotional Engine Processing
[1361] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[1362] Explain the program's processing in natural language.
[1363] 1. Presenting questions and collecting answers:
[1364] When a user accesses the system using a terminal, the server presents an initial question. The user's response is then sent to the server.
[1365] 2. Recognizing emotions and generating the next question:
[1366] The server receives user input, and the emotion engine analyzes that input to recognize the user's emotional state. Based on this, the server determines the next question to ask and sends it to the terminal.
[1367] 3. Accumulating responses and presenting adaptive questions:
[1368] The system continuously accumulates user responses and adaptively modifies the questions based on the analysis results of the emotion engine. For example, if a user is experiencing stress, the difficulty of the questions may be lowered or encouraging messages may be added.
[1369] 4. Task generation and prioritization considering emotions:
[1370] After all the answers to the questions have been collected, the server uses those answers to call the `derive_tasks` function to identify tasks. Furthermore, it adjusts the priority of each task based on the emotions recognized by the emotion engine.
[1371] 5. Generating the WBS:
[1372] The identified tasks are organized into a hierarchical structure and generated as a Work Breakdown Structure (WBS) on the server. Each task in this WBS is numbered, and prioritization based on personal preference is also reflected.
[1373] 6. Provided by WBS:
[1374] Finally, the server sends the generated WBS to the terminal, which then displays it to the user. The user can then review the completed WBS and use it for project management.
[1375] Specific example
[1376] Enter the project name and end date:
[1377] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan."
[1378] Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[1379] Recognition and adaptive processing of emotions:
[1380] If the emotion engine detects "stress" when a user responds, the server will simplify the next question and display a message such as, "Don't worry about the progress."
[1381] Task generation and prioritization:
[1382] The server generates a task called "Marketing plan creation kickoff meeting" and, taking the results of the sentiment engine into consideration, sets the task "Submit final report by December 31, 2023" as a high-priority task.
[1383] Presentation of WBS results:
[1384] The generated WBS is provided to the user, for example, as follows:
[1385] 1. Kick-off meeting for marketing plan creation
[1386] 2. Submit the final report by December 31, 2023.
[1387] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, resulting in efficient and less stressful project management.
[1388] The following describes the processing flow.
[1389] Step 1:
[1390] The user accesses the system via a terminal. The terminal sends an initial request to the server's / ask endpoint.
[1391] Step 2:
[1392] The server receives the initial request, selects the first question from its list of questions (e.g., "What is the name of the project?"), and returns it to the terminal as a response.
[1393] Step 3:
[1394] The terminal presents the user with the first question it received from the server. The user answers the question and enters the answer into the terminal.
[1395] Step 4:
[1396] The device sends the user's response to the server via a POST request. The data format is JSON, for example, {"answer": "Marketing plan creation"}.
[1397] Step 5:
[1398] The server receives the POST request and saves the user's response to its internal `user_responses` dictionary (e.g., {"What is the name of the project?": "Create a marketing plan"}).
[1399] Step 6:
[1400] The server invokes an emotion engine to analyze the user's responses and determine their emotions. For example, it can recognize emotions such as "excitement" or "doubt" from the user's input text.
[1401] Step 7:
[1402] The server selects the next question to ask (e.g., "When is the project start date?") based on the user's emotional state. If the emotion engine detects "stress," the server makes adjustments, such as simplifying the question.
[1403] Step 8:
[1404] The server returns the next selected question as a response to the terminal. The terminal then presents this question to the user.
[1405] Step 9:
[1406] The user answers the following question, and the device sends it back to the server via a POST request. The server also saves this answer to user_responses.
[1407] Step 10:
[1408] The process from steps 6 to 9 is repeated until the user has answered all the questions. Each time, the emotion engine analyzes the user's emotional state, and the server adaptively modifies the questions.
[1409] Step 11:
[1410] Once the user has finished answering all the questions, the server calls the `derive_tasks` function based on the collected answer data to identify tasks.
[1411] Step 12:
[1412] The server extracts the necessary tasks from the user's responses within the `derive_tasks` function (e.g., "Kick-off meeting for marketing plan creation" or "Submit final report by December 31, 2023").
[1413] Step 13:
[1414] The server prioritizes tasks based on the results of the emotion engine's analysis. For example, if a user is feeling "anxious," it will prioritize tasks that need immediate attention.
[1415] Step 14:
[1416] The server calls the `create_wbs` function based on the extracted tasks, organizing them into a hierarchical structure to generate a Work Breakdown Structure (WBS). Each task is assigned a number.
[1417] Step 15:
[1418] The server generates a Work Breakdown Structure (WBS) and sends it to the terminal as a response. The terminal receives the WBS and displays it to the user.
[1419] This allows users to input information interactively, receive support tailored to their emotional state, and automatically generate and review the project's Work Breakdown Structure (WBS).
[1420] (Example 2)
[1421] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1422] In traditional project management systems, manually entering project details can be burdensome for users. This burden is especially great when users are emotionally unstable. Against this backdrop, there has been a need for a system that allows users to easily and efficiently identify tasks and generate an appropriate Work Breakdown Structure (WBS).
[1423] The identification processing 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 the user to input a question to the system, means for the server to generate the next question to be asked based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the server to recognize emotions from the user's answers and adaptively change the content of the questions based on those emotions, and means for the server to adjust the priority of tasks taking emotions into consideration. As a result, the user can efficiently identify project tasks and generate an appropriate WBS while receiving support tailored to their emotions.
[1424] A "user" refers to a person who operates the system and inputs answers to questions.
[1425] A "server" refers to a central device or computer system that receives input from users and performs tasks such as generating questions, analyzing answers, identifying tasks, and creating work breakdown structures.
[1426] An "emotion engine" refers to software or algorithms that analyze emotions from user responses and adaptively change the system's behavior based on that information.
[1427] "Means of inputting questions" refers to the interface through which users input answers to the system via text or voice. This interface includes keyboards, microphones, and other similar devices.
[1428] "Means for generating the next question to ask" refers to a function that allows the server to determine the optimal next question based on the user's input and present it to the user.
[1429] "Means of collecting responses" refers to the function of receiving user input and sending it to the server. This function is implemented using communication modules and databases.
[1430] "Methods for identifying tasks" refers to algorithms or programs that identify specific work items for a project based on user input and list them.
[1431] "Means for organizing tasks into a hierarchical structure" refers to a function for arranging identified tasks into a logical hierarchical structure and creating a work breakdown structure.
[1432] A "Work Breakdown Structure (WBS)" refers to a framework for hierarchically organizing and visually displaying all the tasks that make up a project.
[1433] "Means of recognizing emotions" refers to a function that analyzes a user's text input or voice response to identify their emotions and state. This function utilizes natural language processing and machine learning.
[1434] "Means of adaptively changing question content" refers to a function that adjusts the content and difficulty level of the next question displayed according to the recognized emotional state of the user.
[1435] "Means for adjusting priorities" refers to features that take into account the user's emotional state, re-evaluate the importance and urgency of generated tasks, and arrange them in an appropriate order.
[1436] System overall configuration and functions
[1437] This system identifies necessary tasks based on the user's answers to questions and generates and provides a Work Breakdown Structure (WBS). Furthermore, it includes an emotion engine that recognizes emotions from user input and adapts the questions and adjusts task priorities accordingly. The main components are the user, terminal, server, and emotion engine.
[1438] User actions
[1439] Users access the system via a terminal and answer a series of questions presented to them. The questions are designed to gather detailed project information and include questions such as "What is the project name?" and "When is the project completion date?". The sentiment engine recognizes the user's emotions from their responses, and the system responds adaptively.
[1440] Terminal operation
[1441] The terminal receives user input and sends it to the server. It also displays the next question returned from the server and the generated WBS to the user.
[1442] Server Processing
[1443] The server receives user responses sent from the terminal, analyzes them, and determines the next question to ask. After collecting all of the user's responses, the server identifies project tasks based on them and adjusts task priorities based on the emotions recognized by the emotion engine. Finally, it generates a Work Breakdown Structure (WBS) and provides it to the user again via the terminal.
[1444] Emotional Engine Processing
[1445] The emotion engine analyzes user emotions from their responses and input. For example, it recognizes the user's emotional state (joy, sadness, anger, etc.) from text, and uses that information to adapt questions and adjust task priorities.
[1446] Specific example
[1447] Enter the project name and end date:
[1448] The user is first asked, "What is the name of the project?" and answers, "Creating a marketing plan." Next, the user is asked, "When is the project completion date?" and answers, "December 31, 2023."
[1449] Recognition and adaptive processing of emotions:
[1450] If the emotion engine detects "stress" when a user responds, the server will simplify the next question and display a message such as, "Don't worry about the progress."
[1451] Task generation and prioritization:
[1452] The server generates a task called "Marketing plan creation kickoff meeting" and, taking the results of the sentiment engine into consideration, sets the task "Submit final report by December 31, 2023" as a high-priority task.
[1453] Presentation of WBS results:
[1454] The generated WBS is provided to the user, for example, as follows:
[1455] 1. Kick-off meeting for marketing plan creation
[1456] 2. Submit the final report by December 31, 2023.
[1457] Example of a prompt:
[1458] - "What is the name of the project?"
[1459] - "When is the project completion date?"
[1460] - "How would you describe your current emotional state in one word?"
[1461] - "Are there any tasks you'd particularly like to prioritize?"
[1462] In this way, users can automatically generate a project's WBS simply by inputting information in an interactive format, and they can also receive support tailored to their emotional state, enabling efficient and stress-free project management.
[1463] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1464] Step 1: Access the user's system
[1465] The user accesses the system using a terminal. Upon access, the server initiates a session for the user, generates the first question "What is the name of the project?", and sends it to the terminal. The input is the user's access request, and the output is the generated first question.
[1466] Step 2: The user answers the question.
[1467] The user answers the question displayed on the terminal, "What is the name of the project?", with "Creating a marketing plan". This answer is sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[1468] Step 3: Emotional analysis using the emotion engine
[1469] The server sends the received user responses to the sentiment engine for sentiment analysis. For example, if the user is identified as "highly motivated," the result is returned to the server. The input is the user's response data, and the output is the sentiment analysis result.
[1470] Step 4: Generating the next question
[1471] The server generates the next question based on the sentiment engine's analysis results. For example, it might decide on "When is the project completion date?" and send it to the terminal. The inputs are the sentiment analysis results and past user responses, and the output generates the next question.
[1472] Step 5: The user answers the following question.
[1473] The user answers the next question displayed on the terminal, "When is the project end date?", with "December 31, 2023". This answer is also sent to the server via the terminal. The input is the user's answer, and the output is that answer sent to the server.
[1474] Step 6: Accumulation and Analysis of Responses
[1475] The server stores all user responses collected to date and analyzes that data. This aggregates detailed project information. The input is all user response data, and the output is the analyzed project information.
[1476] Step 7: Task Identification
[1477] The server uses the analyzed project information to call the `derive_tasks` function to identify the necessary tasks. For example, tasks such as "Kick-off meeting for marketing plan creation" and "Completion of market research" are generated. The input is the analyzed project information, and the output is a list of identified tasks.
[1478] Step 8: Prioritizing based on emotions
[1479] The server takes the results of the emotion engine into consideration and adjusts the priority of each task. For example, if the user is feeling stressed, it sets "tasks that can be completed in a short time" as a high priority. The input is a list of tasks and the emotion analysis results, and the output is a list of tasks with adjusted priorities.
[1480] Step 9: Generate WBS
[1481] The server organizes a list of prioritized tasks into a hierarchical structure and generates a Work Breakdown Structure (WBS). The input is a list of prioritized tasks, and the output is the generated WBS.
[1482] Step 10: Provide the WBS
[1483] The server sends the generated WBS to the terminal, which then displays it to the user. The user reviews the completed WBS and uses it for project management. The input is the generated WBS, and the output is the WBS displayed on the terminal.
[1484] (Application Example 2)
[1485] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1486] Modern factory production management requires the efficient management of complex task schedules. However, generating work breakdown structures (WBS) and adjusting task priorities is time-consuming and labor-intensive. Furthermore, the emotional state of managers can affect production efficiency, and a lack of appropriate feedback and task adjustments can disrupt production. Therefore, there is a need for a system that can adaptively respond based on manager input and autonomously generate the optimal production schedule.
[1487] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for the user to input a question to the system, means for the server to generate the next question to be asked based on the user's question, means for the server to collect answers from the user and identify tasks based on them, means for the server to organize the tasks into a hierarchical structure and generate a work breakdown structure, means for the server to provide the work breakdown structure to the user, means for the emotion engine to recognize emotions from the user's answers and for the server to adaptively change the content of the questions based on the recognition result, means for the server to adjust the priority of tasks based on the emotions recognized by the emotion engine, and means for a factory robot to autonomously optimize production tasks based on the generated work breakdown structure and generate a work schedule. This enables efficient and adaptive production management while providing appropriate feedback according to the emotional state of the manager.
[1488] A "user" is someone who accesses the system, enters questions, and operates the system.
[1489] A "system" is a collection of devices and programs that enable users to identify necessary tasks by answering questions and generate and provide a Work Breakdown Structure (WBS).
[1490] A "server" is a device that receives user questions and answers, generates subsequent questions based on them, identifies tasks, and creates a Work Breakdown Structure (WBS).
[1491] "Means for entering questions" refers to an interface for users to input questions into a system, such as an input device like a keyboard or touchscreen.
[1492] "Means of collection" refers to devices or programs that have the function of receiving responses from users and storing them in a database or similar.
[1493] A "means for identifying tasks" refers to a device or program that has the function of identifying and listing the necessary tasks and processes based on the user's responses.
[1494] "Means of organizing into a hierarchical structure" refers to devices or programs that have the function of structuring identified tasks hierarchically and organizing them in a way that establishes a hierarchy of higher and lower levels.
[1495] A Work Breakdown Structure (WBS) is a structure that hierarchically breaks down and systematically organizes all the tasks in a particular project.
[1496] An "emotion engine" is an algorithm or program that analyzes and recognizes a user's emotional state based on their responses and text input.
[1497] "An adaptive modification mechanism" refers to a device or program that has the function of dynamically changing subsequent questions and feedback based on the user's emotions recognized by the emotion engine.
[1498] A "means for adjusting priorities" refers to a device or program that has the function of dynamically resetting task priorities based on the emotional results recognized by the emotion engine.
[1499] A "factory robot" is a mechanical device that operates autonomously within a factory and performs production tasks.
[1500] "Means for autonomously optimizing and generating work schedules" refers to devices or programs that have the function of autonomously optimizing production tasks and creating effective work schedules based on a generated Work Breakdown Structure (WBS) used by factory robots.
[1501] "Means of provision" refers to devices or programs that have the function of displaying the generated Work Breakdown Structure (WBS) to the user via a display device or the like.
[1502] Modes for carrying out the invention
[1503] System overall configuration and functions
[1504] The system of this invention comprises a user, a terminal, a server, an emotion engine, and a factory robot. The user accesses the system via the terminal and inputs answers to questions about production tasks. The server analyzes these answers, uses the emotion engine to recognize the user's emotional state, and adaptively generates the next questions. It also collects all answers to break down the tasks and provides the user with a generated Work Breakdown Structure (WBS). Furthermore, the factory robot autonomously optimizes the production tasks and generates a work schedule based on this WBS.
[1505] Hardware and software configuration
[1506] Hardware:
[1507] Smartphone (iOS or Android)
[1508] Factory robot control systems (PLCs, microcontrollers, etc.)
[1509] software:
[1510] Server-side: Programming languages such as Python and Ruby
[1511] Sentiment analysis API: For example, IBM Watson Tone Analyzer
[1512] Database: MySQL, PostgreSQL, etc.
[1513] Smartphone application frameworks: React Native and Flutter
[1514] Emotion recognition and task generation / adjustment
[1515] When a user answers questions about production, the response data is sent from the terminal to the server. The server is equipped with an emotion engine, which analyzes the user's emotional state. For example, the emotion engine recognizes emotions such as "stress," "joy," and "anger" from the text of the response.
[1516] Based on the perceived emotions, the server adaptively modifies the next questions it presents. For example, if the server detects that the user is experiencing severe stress, it may lower the difficulty of the questions or add encouraging messages.
[1517] The server identifies tasks from all collected responses and automatically adjusts priorities, taking into account the results of the emotion engine. This ensures that the generated WBS accurately reflects the user's emotional state, enabling optimized production management.
[1518] Autonomous optimization and scheduling of factory robots
[1519] The generated Work Breakdown Structure (WBS) is sent from the server to the factory robots. Based on this WBS, the factory robots autonomously optimize production tasks. They then generate an optimal work schedule and begin their activities accordingly. This system significantly reduces manual adjustments and is expected to improve production efficiency.
[1520] Specific example
[1521] For example, consider the case where the administrator enters the following information.
[1522] "We want to start a new production line."
[1523] "Don't worry about the progress."
[1524] "We will focus on quality checks."
[1525] In this case, the emotion engine recognizes "stress" and provides feedback such as "Don't worry about progress." The server then sends the generated WBS to the factory robot, which autonomously optimizes high-priority tasks focused on "quality checks."
[1526] In this way, efficient and adaptive production management is achieved while taking into account the emotional state of the users.
[1527] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1528] Step 1:
[1529] Users access the system using a terminal and answer questions about production tasks. The input is text data, such as "I want to start a new production line." The terminal sends this input to the server.
[1530] Step 2:
[1531] The server receives user input. The server analyzes the input data and sends it to the emotion engine to recognize the user's emotions. The input data is in text format, and after the emotion engine analyzes it, the recognized emotion data is output.
[1532] Step 3:
[1533] The server generates the next question to ask based on sentiment data from the sentiment engine. For example, if the server detects that the user is stressed, it will generate a question that includes an encouraging message such as "Don't worry about the progress." The generated question is sent to the terminal in text format.
[1534] Step 4:
[1535] The terminal displays the next question from the server to the user. The user answers the new question, and that answer is sent back to the server. The input is again text data.
[1536] Step 5:
[1537] The server collects all responses from users and identifies tasks based on them. Specifically, it analyzes the response data and lists the necessary tasks. For example, tasks such as "start the production line" and "quality check" might be identified.
[1538] Step 6:
[1539] The server organizes the identified tasks into a hierarchical structure to generate a Work Breakdown Structure (WBS). It also adjusts the priority of each task, taking into account the analysis results of the emotion engine. The generated WBS is output in a hierarchically organized list format.
[1540] Step 7:
[1541] The server sends the generated Work Breakdown Structure (WBS) to the terminal, which then displays it to the user. The user can view the WBS on the screen and grasp the overall picture of the production tasks.
[1542] Step 8:
[1543] The server sends the generated Work Breakdown Structure (WBS) to the factory's robot control system. Based on this WBS, the robots autonomously optimize production tasks and generate work schedules. The optimized schedule is then executed as specific work instructions by the factory robot's control system.
[1544] Step 9:
[1545] Factory robots perform necessary production tasks according to the generated schedule. For example, if the quality check task is set as a high priority, the robot will perform the quality check first. The completed tasks are fed back to the server in real time.
[1546] This series of processing flows enables efficient and adaptive production management while taking into account the user's emotional state. This system aims to reduce user stress and improve production efficiency.
[1547] 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 controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1548] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1549] 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 this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[1550] Furthermore, the emotion identification model 59, acting 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 a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1551] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[1552] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[1553] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[1554] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[1555] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is 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 the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[1556] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[1557] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[1558] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[1559] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[1560] 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.
[1561] Furthermore, it is not necessary to store the entirety 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 the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[1562] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[1563] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of 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). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[1564] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[1565] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[1566] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[1567] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[1568] The following is further disclosed regarding the embodiments described above.
[1569] (Claim 1)
[1570] A means by which the user enters a question into the system,
[1571] A means by which the server generates the next question to ask based on the user's question,
[1572] A means by which the server collects responses from users and identifies tasks based on them,
[1573] The server provides means for organizing the tasks into a hierarchical structure and generating a work decomposition structure,
[1574] The server provides the user with the aforementioned work decomposition structure,
[1575] A system that includes this.
[1576] (Claim 2)
[1577] The system according to claim 1, wherein the server includes means for sequentially saving responses from users.
[1578] (Claim 3)
[1579] The system according to claim 1, which includes means for setting a deadline for tasks from the project end date when the server identifies the tasks.
[1580] "Example 1"
[1581] (Claim 1)
[1582] A means by which the user enters answers to questions that are displayed sequentially to the system,
[1583] A means by which the server generates the next question to be asked based on the user's response and presents it to the user via the terminal,
[1584] A means by which the server collects responses from users and identifies tasks based on them,
[1585] The server provides means for organizing the tasks into a hierarchical structure and generating a work decomposition structure,
[1586] A means by which the server provides the aforementioned work decomposition structure to the user via a terminal,
[1587] A system that includes this.
[1588] (Claim 2)
[1589] The system according to claim 1, comprising means for the server to sequentially save responses from users and use them to generate a final work breakdown structure.
[1590] (Claim 3)
[1591] The system according to claim 1, which includes means for setting a deadline for tasks from the project end date when the server identifies the aforementioned tasks.
[1592] "Application Example 1"
[1593] (Claim 1)
[1594] A means by which the user enters a question into the system,
[1595] A means by which the server generates the next question to ask based on the user's question,
[1596] A means by which the server collects responses from users and identifies tasks based on them,
[1597] The server provides means for organizing the tasks into a hierarchical structure and generating a work decomposition structure,
[1598] The server provides the user with the aforementioned work decomposition structure,
[1599] Means by which industrial autonomous equipment performs work based on a generated work disassembly structure,
[1600] A system that includes this.
[1601] (Claim 2)
[1602] The system according to claim 1, wherein the server includes means for sequentially saving responses from users.
[1603] (Claim 3)
[1604] The system according to claim 1, which includes means for setting a deadline for tasks from the project end date when the server identifies the tasks.
[1605] "Example 2 of combining an emotion engine"
[1606] (Claim 1)
[1607] A means by which the user enters a question into the system,
[1608] A means by which the server generates the next question to ask based on the user's question,
[1609] A means by which the server collects responses from users and identifies tasks based on them,
[1610] The server provides means for organizing the tasks into a hierarchical structure and generating a work decomposition structure,
[1611] The server provides the user with the aforementioned work decomposition structure,
[1612] A means by which the server recognizes emotions from the user's responses and adaptively modifies the question based on those emotions,
[1613] A means for the server to adjust task priorities while taking emotions into consideration,
[1614] A system that includes this.
[1615] (Claim 2)
[1616] The system according to claim 1, wherein the server includes means for sequentially saving responses from users.
[1617] (Claim 3)
[1618] The system according to claim 1, which includes means for setting a deadline for tasks from the project end date when the server identifies the tasks.
[1619] "Application example 2 when combining with an emotional engine"
[1620] (Claim 1)
[1621] A means by which the user enters a question into the system,
[1622] A means by which the server generates the next question to ask based on the user's question,
[1623] A means by which the server collects responses from users and identifies tasks based on them,
[1624] The server provides means for organizing the tasks into a hierarchical structure and generating a work decomposition structure,
[1625] The server provides the user with the aforementioned work decomposition structure,
[1626] A means by which an emotion engine recognizes emotions from the user's responses, and the server adaptively modifies the question content based on the recognition results,
[1627] A means by which the server adjusts task priorities based on the emotions recognized by the emotion engine,
[1628] A means for a factory robot to autonomously optimize production tasks based on a generated work breakdown structure and generate a work schedule,
[1629] A system that includes this.
[1630] (Claim 2)
[1631] The system according to claim 1, wherein the server includes means for sequentially saving responses from users.
[1632] (Claim 3)
[1633] The system according to claim 1, which includes means for setting a deadline for tasks from the project end date when the server identifies the tasks. [Explanation of Symbols]
[1634] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means by which the user enters a question into the system, A means by which the server generates the next question to ask based on the user's question, A means by which the server collects responses from users and identifies tasks based on them, The server provides means for organizing the tasks into a hierarchical structure and generating a work decomposition structure, The server provides the user with the aforementioned work decomposition structure, A system that includes this.
2. The system according to claim 1, wherein the server includes means for sequentially saving responses from users.
3. The system according to claim 1, which includes means for setting a deadline for tasks from the project end date when the server identifies the tasks.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A