Man-machine computing-oriented system architecture

By designing a system architecture for human-computer computing, and using task management and resource allocation modules, the flexibility and adaptability of the human-computer collaboration model is achieved, and the problem of human-computer collaboration systems in the existing technology is difficult to adapt to diversified tasks, and improve the problem of human-computer collaboration systems being difficult to adapt to diversified tasks. The efficiency and quality of task processing.

CN119166324APending Publication Date: 2024-12-20NORTHWESTERN POLYTECHNICAL UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410861510.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-06-28
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

The existing technology lacks a universal and scalable human-machine collaboration system architecture, making it difficult to adapt to diversified computing tasks, resulting in increased task processing difficulties and low service quality and efficiency.

Method used

A system architecture for human-computer computing is designed, including task management module, coordinator module, resource manager module and interactive view module. It is dynamically allocated through three collaboration modes (sequential, parallel, independent decision-making) and task decomposition mechanisms. Human and machine computing resources to realize adaptive task processing.

Benefits of technology

The quality and efficiency of task service are improved, and the flexible human-machine collaboration model is used to adapt to different task needs, balance processing quality and cost, and the coupling problem between the human-machine computing model and application scenarios is solved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119166324A_ABST
    Figure CN119166324A_ABST
Patent Text Reader

Abstract

The invention discloses a system architecture oriented to man-machine calculation. The system architecture comprises a task management module, a coordinator module, a resource manager module and an interactive view module, the coordinator module is connected with the task management module and the resource manager module, and the coordinator module is connected with the interactive view module; and the task management module is used for acquiring new tasks, sorting and decomposing the new tasks according to task priorities to obtain a sub-task set of the new tasks, and transmitting the sub-task set to the coordinator module for processing. The method solves the problems that a man-machine calculation model algorithm is highly coupled with an application scene, an extensible system architecture with universality is lacked, a flexible and selectable man-machine cooperation mode is difficult to provide for a single scene, the task processing difficulty is greatly increased due to random parameters and uncertainty factors of real-time diversified tasks, and the task processing efficiency is greatly improved. And the task service quality and efficiency are low.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of human-machine systems, and in particular to a system architecture oriented to human-machine computing. Background Art

[0002] Since the beginning of the 18th century, mankind has experienced three complete waves of industrial revolutions, from the "steam age" to the "electrical age" and then to the "information age". Each industrial revolution has subversively changed the course of human civilization development, reshaping everything from people's lives to international relations. The wheel of history is still rolling forward, and artificial intelligence (AI) is sweeping the world at lightning speed, ushering in the fourth industrial revolution of the "artificial intelligence age", and the complex problem-solving ideas based on "human-machine collaboration" will become a major symbol of the AI ​​era. Human-machine collaborative technology aims to give full play to the respective advantages of human intelligence and machine intelligence, and to form a collaborative team with humans and intelligent machines to interact autonomously and achieve win-win cooperation.

[0003] The "Plan for the Development of New Generation Artificial Intelligence" lists "human-machine hybrid intelligence" as one of the five basic theoretical bottlenecks that need to be broken through. It focuses on the research of key theories and technologies such as "human-in-the-loop" hybrid enhanced intelligence, behavioral enhancement of human-machine intelligence symbiosis, brain-machine collaboration, and human-machine group collaboration, and points out that in the future "human-machine collaboration will become the mainstream production and service mode". In addition, as big data and deep learning continue to achieve breakthrough results in different fields, it is necessary to clearly realize that even if sufficient or even unlimited data resources are provided for artificial intelligence systems, human intervention cannot be ruled out. For example, in the face of the understanding of the nuances and ambiguities of human language or behavior in human-computer interaction systems, especially when applying AI technology to some major fields (such as financial risk management, medical diagnosis, criminal justice, autonomous driving, social public opinion analysis, intelligent robots, etc.), how to avoid the risks, loss of control, and even harm caused by the limitations of AI technology? This requires the introduction of human supervision and interaction, allowing human workers to participate in verification, improving the confidence of intelligent systems, making the best use of human knowledge, and optimally balancing human cognition and professional skills with computer computing power, so as to achieve large-scale processing of incomplete and unstructured knowledge information, and effectively avoid decision-making risks and system out-of-control problems caused by the limitations of current AI technology. Human-Machine Computing (HMC), as a new computing paradigm, is based on "hybrid intelligence" technology, aiming to introduce human role into the computing loop of intelligent systems, and closely couple human's advanced cognitive mechanism for analyzing and responding to fuzzy and uncertain problems with machine intelligence systems, so that the two can adapt to each other, work together, form two-way information exchange and control, and combine human perception and cognitive ability with the powerful computing and storage capabilities of computers to form an intelligent augmented intelligence form of "1+1>2".

[0004] At present, facing the diverse, complex, and cognitive-related human-computer computing task requirements, how to create an intelligent fusion interaction form for human-computer collaboration so that the two can be organically combined and give full play to their respective advantages is an urgent problem to be solved in current research, and the corresponding research is still in its early stages. For example, a Harvard University research team designed a human-computer collaborative cancer diagnosis system, which is significantly better than unilateral doctors in diagnosing cancer by combining expert doctors and AI models. MIT researchers use AI predictable behavior to create more human-like behaviors to guide the decision-making of self-driving cars. The Swarm AI system designed by researchers at Stanford University School of Medicine can more effectively identify pneumonia in chest X-rays than automatic diagnosis. Oelen et al. from the University of Hannover in Germany proposed a Web-based GUI system that uses human participants and AI to collaborate to achieve automatic annotation of academic articles. At the same time, crowdsourcing platforms provide an inexpensive way to use human cognition and reasoning to complete a large number of computing tasks. HOD is a human-in-the-loop outlier detection framework that effectively uses human intelligence to find true outliers. QOCO is a query-oriented system that requires Oracle crowds to clean up inconsistent data or missing values. Considering the diversity of tasks, the above research can effectively use human expertise to improve the performance of AI models, making them significantly better than unilateral processing. However, such applications mainly focus on solving problems in specific fields, and there is currently no general platform to support the expansion of diverse collaborative models so that these human-machine collaborative models can be applied to a variety of computing tasks. Summary of the invention

[0005] The embodiments of the present invention provide a system architecture for human-computer computing, so as to at least solve the technical problems that the human-computer computing model algorithm is highly coupled with the application scenario, there is a lack of a universal and scalable system architecture, it is difficult to provide a flexible and optional human-computer collaboration mode for a single scenario, and the random parameters and uncertainty factors of real-time diversified tasks greatly increase the difficulty of task processing, resulting in low task service quality and efficiency.

[0006] According to one aspect of an embodiment of the present invention, a system architecture for human-computer computing is provided. The architecture may include: a task management module, a coordinator module, a resource manager module, and an interactive view module, wherein the coordinator module is connected to the task management module and the resource manager module, and the coordinator module is connected to the interactive view module; the task management module is used to obtain new tasks, sort and decompose new tasks according to task priorities, obtain a subtask set of new tasks, and pass the subtask set to the coordinator module for processing; the coordinator module is used to obtain the allocation result of human-computer computing resources of the subtask set based on the subtask set, call the computing resources corresponding to the allocation result suitable for the subtask from the resource manager module based on the allocation result, calculate the subtask based on the computing resources, and obtain the target result, wherein the allocation result includes the order of subtasks suitable for human computing resources or machine computing resources processing. The computing resources include human computing units or machine computing units. The coordinator module includes a human-machine collaboration mode, which is used to ensure the mutual coordination between computing resources. The coordinator includes a system monitoring and analysis framework, which monitors the operating status of the system architecture and optimizes the system architecture. The resource manager module is used to discover human-machine computing resources, store a variety of human-machine computing resources, and provide the required computing resources for the coordinator module, wherein human-machine resources include human resources and machine resources. The interactive view module is used to display the machine computing unit calculation results in the target results after machine processing in the coordination module for user processing, and display the human computing unit processing tasks. Users also need to create tasks through the interactive interface, view task status, and obtain the final processing results.

[0007] Optionally, the expression of the new task is: t = (T, S, C, O) (1) where T represents the task type, S represents a set of subtasks decomposed from a task, C represents a constraint set of the task, and O represents that the target set is different, where the subtask set decomposes a task according to the decomposition operator.

[0008] Optionally, a single task t consists of a set of subtasks Composition, among which, s i Represents the description of the subtask, Defines a set of execution subtasks i Required capabilities, cp i The functional requirements required for the subtask are defined, and the quality level of the required capability is q i , Defines the representation subtask s i The constraints based on non-functional requirements.

[0009] Optionally, the new task is decomposed and sorted to obtain subtasks of the new task, including: the new task is initially decomposed into subtasks by decomposition operators, and the decomposition operators control the time execution order of the subtasks.

[0010] Optionally, based on the subtasks, the process of obtaining the allocation result of the human-machine computing resources of the subtasks may also include: based on the types of the subtasks, dividing the subtask set into human subtasks and machine subtasks.

[0011] Optionally, the subtask set is divided into subtasks suitable for humans and subtasks suitable for machines as follows: n(t i )=n h (t i )+n m (t i ) (2) Where n(t i ) represents the total number of subtasks in the new task, where t i Indicates the type of each subtask, n h (t i ) represents the subtask assigned to human workers, n m (t i ) represents the subtask assigned to the machine.

[0012] Optionally, the process of processing the subtask based on the computational model also satisfies the task-level constraint condition, and the task constraint condition is defined as:

[0013]

[0014] Among them, c h (s i ) represents the fee paid to human workers for each subtask, c m (s i ) represents the fee paid to the machine agent for each subtask, λ(t i ) represents task t i The ratio of man-machine resources, Bug * Represented as task t i The total budget allocated, Acc * Represents task t i The minimum confidence / accuracy, δ h is the human estimation accuracy, δm is the machine estimation accuracy, n(s) is the number of subtasks corresponding to the human or machine computing resources, n h (t i ) represents the subtask assigned to human workers, n m (t i ) represents the subtask assigned to the machine.

[0015] Optionally, the value range of λ is expressed as:

[0016]

[0017] Beneficial effects of the present invention:

[0018] The present invention proposes a system architecture for human-computer computing, including: by designing three different human-computer collaboration modes (i.e., sequential collaboration mode, parallel collaboration mode and independent decision-making mode), it can realize flexible human-computer collaboration, and the most suitable collaboration mode depends on the task attributes and user needs; the hmOS system designs a task model for diversified task requirements, which decomposes the task into a set of subtasks according to the resource requirements of different stages of task processing, making basic preparations for subsequent task allocation; the hmOS system realizes adaptive task processing by continuously balancing machine computing resources and human participation. Therefore, hmOS can achieve the best balance between processing quality and cost, solve the problems of high coupling between human-computer computing model algorithms and application scenarios, lack of universal and scalable system architecture, difficulty in providing flexible and optional human-computer collaboration modes for a single scenario, and the random parameters and uncertainty factors of real-time diversified tasks greatly increase the difficulty of task processing, resulting in technical problems such as low task service quality and efficiency. It provides a system architecture for human-computer computing, decomposes tasks into human tasks and machine tasks, calculates human tasks through human computing units, and calculates machine tasks through machine units. In the calculation process, the task conditions are constrained to obtain the ratio of human-computer resource quantities, thereby improving the task service quality and efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of this application. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:

[0020] Figure 1 is a schematic diagram of a system architecture for human-computer computing according to an embodiment of the present invention;

[0021] Figure 2 Schematic diagram of the runtime environment architecture of a human-computer computing system according to an embodiment of the present invention. DETAILED DESCRIPTION

[0022] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only embodiments of a part of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0023] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchangeable where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0024] Example 1

[0025] According to an embodiment of the present invention, a system architecture oriented to human-computer computing is provided. Figure 1 is a schematic diagram of a system architecture for human-computer computing according to an embodiment of the present invention, such as Figure 1 As shown, the system may include: a task management module, a coordinator module, a resource manager module and an interactive view module, wherein the coordinator module is connected to the task management module and the resource manager module, and the coordinator module is connected to the interactive view module.

[0026] The task management module is used to obtain new tasks, sort and decompose the new tasks according to their priorities, obtain a subtask set of the new tasks, and pass the subtask set to the coordinator module for processing.

[0027] In this embodiment, a new task is obtained. For example, the new task may be a task of diagnosing a medical image that requires a doctor and a machine to complete the task together. The priority of the task is set, and the new task is sorted and decomposed based on the task priority to obtain a subtask set of the new task.

[0028] The task decomposition operation needs to be completed in the task management module first. In this process, the functional relationship in the task structure can be effectively used to decompose the task. Task decomposition definition model: Suppose the limited domain F is a set of subtask functions, containing n sub-functions F = f 1 ,f 2 ,...,fn Based on the functional coupling relationship analysis, the sub-functions of different stages can be aggregated into F′=f 1 ,(f 2 ,f 3 ),(f 4 ,f 5 ,f 6 ),...,f n Therefore, a task t can be decomposed into t = s 1 (f 1 ),s 2 (f 2, f 3 ),s 3 (f 4 ,f 5 ,f 6 ),...,s m (f n ). After functional analysis, the task is initially decomposed into m subtasks, represented by s 1 (f 1 ),s 2 (f 2 ,f 3 ),s 3 (f 4 ,f 5 ,f 6 ),...,s m (f n )

[0029] The coordinator module is used to obtain the allocation result of the human-machine computing resources of the subtask set based on the subtask set, call the computing resources corresponding to the allocation result suitable for the subtask from the resource manager module based on the allocation result, calculate the subtask based on the computing resources, and obtain the target result, wherein the allocation result includes the sequence of subtasks suitable for processing by human computing resources or machine computing resources, the computing resources include human computing units or machine computing units, the coordinator module includes a human-machine collaboration mode, the human-machine collaboration mode is used to ensure mutual coordination between computing resources, and the coordinator includes a system monitoring and analysis framework, the system monitoring and analysis framework monitors the operating status of the system architecture and optimizes and adjusts the system architecture.

[0030] In this embodiment, based on a subtask set, an allocation result of human-machine computing resources of the subtask set is obtained. For example, the allocation results of several subtasks are human subtasks, and other subtasks except the new task of the human subtask are machine subtasks. According to the human subtasks in the allocation results, human computing resources are called from the resource manager module to calculate the human subtasks to obtain target results corresponding to the human subtasks. According to the machine subtasks in the allocation results, machine computing resources are called from the resource manager module to calculate the machine subtasks to obtain target results corresponding to the machine subtasks. The coordinator module includes a human-machine collaboration mode, and the human-machine collaboration mode is used to ensure mutual coordination between human computing resources and machine computing resources. The coordinator includes a system monitoring and analysis framework, and the system monitoring and analysis framework monitors the operating status of the system architecture and optimizes and adjusts the system architecture.

[0031] Human-computer collaboration mode, in the decision workflow of the hmOS system, three different human-computer collaboration modes are designed, which are divided by the combination of specific operators. The collaboration mode essentially represents the process of converting "problem description" into "solution". This process includes collaborative problem solving methods involving both humans and machines. The goal and input data of "Problem Statement" are used to define the task, while "Solution" represents the final result. The sequential process determines the order of tasks, where the output of each task will be used as the input of the next task. In the hmOS system of the present invention, a variety of operators are provided to handle computational allocation and result aggregation. Through these operators, the execution process of a task (i.e., T) can be represented as a sequence. In particular, the decomposition operator (i.e., DC) is used to decompose the problem into parallel control flows, while the aggregation operator (i.e., A) is responsible for the result merging in the vertical direction. The decision operator (i.e., D) is used to make decisions on different solutions generated for the same task. Iteration (i.e., ×) represents the cyclic iteration process in task execution.

[0032] In sequential collaboration, problem solving is viewed as an iterative process where solutions build on each other, similar to the “repeat…until <condition>"structure. For example, in iterative labeling or object recognition in images, a crowdworker gives a preliminary solution based on the problem, and then the crowdworker or machine decides whether further improvement is needed. This cycle continues until the decision-making process approves the solution. The concurrent collaboration mode combines the divide-and-conquer approach, decomposing the initial problem into sub-problems for parallel execution and aggregating the results to obtain the final solution. The significant advantage of this approach is that the task can be initially decomposed into independent sub-tasks that can be solved simultaneously. For example, in medical diagnosis, the overall problem specification is decomposed into multiple sub-problems, and then the AI ​​model constructs the final diagnosis by analyzing the patient's case and combining the doctor's consultation. Finally, the individual decision mode represents the decision made by a single human or machine agent, and the example scenario is the auxiliary decision of the guardian in autonomous driving. The method is also applicable to group-based decision-making, in which the best solution is determined independently by multiple crowdworkers. Group decision-making includes evaluating different solutions through voting, forced agreement, or parallel guessing and aggregation. Through the above extensions, the human-machine collaboration mode can not only effectively manage and optimize the execution process of the task, but also flexibly adapt to different types of task requirements, and improve the performance and reliability of the overall system.

[0033] The resource manager module is used to discover human-machine computing resources, store various human-machine computing resources, and provide the required computing model for the coordinator module, where the human-machine resources include user resources and machine resources.

[0034] In this embodiment, the core of the resource management module is the effective allocation and management of human-computer computing resources. It identifies and allocates computing units suitable for specific tasks through discovery functions to ensure the optimization of system performance and load balancing. In addition, the resource management module can dynamically adjust resource configuration according to actual workload (task requirements) and system requirements to meet different computing requirements.

[0035] The interactive view module is used to display the calculation results of the machine computing unit in the target results after machine processing in the coordination module for users to process, and to display the human computing unit processing tasks. Users also need to create tasks through the interactive interface, view task status, and obtain the final processing results.

[0036] In this embodiment, the interactive view acts as a bridge between the user and the system, providing a user-friendly graphical interface that simplifies the user's operation and interaction with the system. Through a rich API interface, the user can easily call system functions without directly processing the underlying kernel API. This greatly improves the system's usability and user experience. In particular, through the design of the front-end and back-end separation framework, hmOS not only improves the maintainability and stability of the system, but also provides users with a convenient access method. Whether through the cloud or the local server, the system can provide real-time response and resource management to ensure efficient use of users and stable operation of the platform.

[0037] According to an embodiment of the present invention, a schematic diagram of a runtime environment architecture of a human-machine computing system is provided. Figure 2 is a schematic diagram of a runtime environment architecture of a human-computer computing system according to an embodiment of the present invention. Figure 2 As shown in the figure. First, in a task-oriented system, when a user (e.g., a task requester) creates a task request instance, the task request phase is activated and the task manager schedules the task execution. Then, the task will request computing resources from the resource allocator. During this process, the resource allocator will select the adapted computing units detected by the computing unit manager to form the computing unit set of the current task. Once the computing unit set is formed, it will be arranged into the runtime environment, where human-based and machine-based computing units can perform tasks according to their respective roles. After the above phases are completed, the task is ready to execute. In particular, the runtime environment is task-sensitive. In other words, it is specific to different types of tasks or application models. For example, assuming that the system is performing a classification task, it needs to establish a relevant machine learning model and computing unit set according to the task type and scale. In addition, the human-machine collaboration mode is also an important factor in the runtime environment. Next, during the life cycle of the task, the monitoring framework captures raw indicators (or events) from the runtime environment and the running human-machine computing units. These indicators (or events) represent a specific computing unit, a specific set of computing units, or a specific task execution and the overall state of the system at a certain moment. Subsequently, the monitoring framework processes these indicators to generate the requested indicators, which provide a basis for users to evaluate and modify system modules. At the same time, these indicators also provide guidance for system task reset (for example, reallocating computing resources or reconfiguring the runtime framework), which is crucial for the effective operation of the system; finally, in order to achieve an efficient task execution process, this system needs to perform quantitative analysis during or after operation to gain an in-depth understanding of the system status. The system analysis framework receives indicators for reliability measurement from the monitoring framework, and then passes reliable self-generated feedback indicators back to the monitoring framework for further processing.

[0038] The above modules of this embodiment are further introduced below.

[0039] Optionally, the expression of the new task is: t = (T, S, C, O) (1), where T represents the task type, S represents a set of subtasks decomposed from a task, C represents a constraint set of the task, and O represents that the target set is different, where the subtask set decomposes a task according to the decomposition operator.

[0040] In this embodiment, the human-computer computing task model, in different systems, the task definition is diverse in structure and granularity. In traditional micro-task crowdsourcing platforms or service-based systems, tasks usually correspond to single activities performed by similar computing units. In contrast, in a collaborative framework, complex tasks may contain multiple activities that require coordinated execution by different computing units. In essence, hmOS focuses on the execution of tasks by a specific set of computing units. The task model proposed in the present invention is formulated based on the basic task requirements required for the development platform. Specifically, the task manager and coordinator require a task model with the following characteristics:

[0041] 1) Task type: Task type is a key factor in expanding the applicability of the system. According to the format of input data, the task types applicable to hmOS include: ① Computer vision tasks (C T ), such as video-based person re-identification; ② Natural language processing tasks (N T ), such as named entity recognition; ③ Decision-making tasks of robotic systems (D T ), such as autonomous driving.

[0042] 2) Task dependency: The set of computing units assigned to a specific task reflects the task’s dependency on computing resources. Therefore, the task model should provide the dependencies of computing units based on the execution of activities. This dependency can help the system better understand the computing resources required by the task during execution, thereby improving the efficiency and accuracy of resource allocation.

[0043] 3) Task decomposition: A specific task can be decomposed into a set of subtasks / activities and ultimately into atomic operations. The decomposition is controlled by decomposition operators, which specify the temporal relationship between subtasks. By decomposing tasks, the system can manage and schedule resources more effectively, ensuring that each subtask can be completed on time and ultimately achieving the goal of the overall task.

[0044] 4) Task goals: Goals are crucial to optimizing the task execution process. Therefore, a set of multidimensional goals is needed to control the selection of computing units. Clear goals can help the system prioritize the computing units that can best meet the task requirements when resources are limited, thereby improving overall efficiency.

[0045] 5) Task constraints: In order to perform tasks, the platform ensures the rationality and effectiveness of resource allocation based on necessary constraints (i.e. functional requirements or non-functional requirements). These constraints can include the processing power, storage space, network bandwidth, etc. of the computing unit, so as to ensure that the task can obtain the required resource support during execution and ensure that the task can be completed efficiently and accurately.

[0046] Taking all the above factors into consideration, the task model is defined as a four-tuple, t = (T, S, C, O), where T represents the task type, S is the set of subtasks decomposed from the task, C represents the set of task constraints, which describe the requirements of the task, and O represents different sets of goals (different configuration of human and machine resources). As shown above, a set of computing units (i.e., human-based and machine-based computing units) is required to perform a task.

[0047] Optionally, a single task t consists of a set of subtasks Composition, among which, s i Represents the description of the subtask, Defines a set of execution subtasks i Required capabilities, cp i The functional requirements required for the subtask are defined, and the quality level of the required capability is q i , Defines the representation subtask s i The constraints based on non-functional requirements.

[0048] In this embodiment, the task constraints define the functional requirements, i.e., the skill requirements required to perform the subtasks, and the non-functional requirements. Specifically, a single task t consists of a set of subtasks. Composition. Among them, s i Represents the description of the subtask, Defines a set of execution subtasks i Required capabilities, including cp i The type of functionality required for the subtask is defined, and the quality level of the required capability is q i . Defines the representation subtask s i The non-functional requirements of the task are constrained. Examples of these requirements include, but are not limited to, execution cost and time constraints. Suppose a task has a time constraint, i.e., a deadline, and the selected computational unit must satisfy the constraint ∑ u∈U time(u,t)≤deadline.

[0049] Optionally, the new task is decomposed and sorted to obtain subtasks of the new task, including: the new task is initially decomposed into subtasks by decomposition operators, and the decomposition operators control the time execution order of the subtasks.

[0050] In this embodiment, the task is initially decomposed into subtasks by decomposition operators, which control the temporal execution order of the subtasks. The decomposition operators include five types, namely And, Or, Optor, Xor, and Ord, some of which have two modes: sequential mode (suffixed with _seq) and parallel mode (suffixed with _par). In addition, the task constraints define functional requirements, i.e., the skill requirements required to perform the subtasks, and non-functional requirements.

[0051] Optionally, based on the subtasks, the process of obtaining the allocation result of the human-machine computing resources of the subtasks may also include: based on the types of the subtasks, dividing the subtask set into human subtasks and machine subtasks.

[0052] In this embodiment, based on the decision-making task allocation, let T = {t i |i∈I T } is the set of tasks. The set of human workers is represented by H = {H j |j=1,2,...,J}. Each worker has a corresponding set of attributes: Where id j A unique identifier for the worker, It is a collection of historical work, used to quantify ability, preference j Preserve the interests and expertise of workers. In addition, the present invention represents the machine set as M = {m k |k=1,2,...,K}, each machine has the following properties: <Genre k ,State k, Capacity k >, where Genre k Indicates the type dependency of the task, State k Displays the current status, Capacity k Represents the amount of computing power. Given a set of computing units U and edges E representing connections between dependent subtasks, a graph G = (U, E) is formed, and U is associated with task t i The RSA problem is defined as identifying a subset As a member of the computing unit set, it is used to execute task t i The selection is subject to the task-level constraint C and aims to optimize the performance based on the specified goal O. The task decision allocation model is: Let T = {t i |i∈I T } is the set of tasks. The set of human workers is represented by H = {H j |j=1,2,...,J}. Each worker has a corresponding set of attributes: Where id j A unique identifier for the worker, It is a collection of historical work, used to quantify ability, preference j Preserve the interests and expertise of workers. In addition, the present invention represents the machine set as M = {m k |k=1,2,...,K}, each machine has the following properties: <Genre k, State k ,Capacity k >, where Genre k Indicates the type dependency of the task, State k Displays the current status, Capacity k Represents the amount of computing power. Given a set of computing units U and edges E representing connections between dependent subtasks, a graph G = (U, E) is formed, and U is associated with task t i The RSA problem is defined as identifying a subset As a member of the computing unit set, it is used to execute task t i The selection is subject to task-level constraints C and aims to optimize performance based on the specified goal O. According to the types of subtasks mentioned above, the subtask set is divided into human subtasks and machine subtasks, where c h (s i ) represents the fee paid to human workers for each subtask, c m (s i ) represents the fee paid to the machine agent for each subtask. In addition, conf(s i ) represents subtask s i The confidence or accuracy of δ h and δm are the estimated accuracy of humans and machines, respectively. The binary indicator isCorrect(s i )Evaluate conf(s) i ) exceeds the configurable threshold conf T : If conf(s i )≥conf T , then isCorrect(s i ) is 1; otherwise, it is 0. In this case, we need to define task-level constraints (TLCs), where the accuracy of a set of subtasks is represented by A(s i )=correct(t i ) / n(t i ), where correct(t i )=∑s i isCorrect(s i ).

[0053] Optionally, the subtask set is divided into subtasks suitable for humans and subtasks suitable for machines as follows: n(t i )=n h (t i )+n m (t i ) (2), where n(t i ) represents the total number of subtasks in the new task, where t i Indicates the type of each subtask, n h (t i ) represents the subtask assigned to human workers, n m (t i ) represents the subtask assigned to the machine.

[0054] Optionally, the process of processing the subtask based on the computational model also satisfies the task-level constraint condition, and the task constraint condition is defined as:

[0055]

[0056] Among them, c h (s i ) represents the fee paid to human workers for each subtask, c m (s i ) represents the fee paid to the machine agent for each subtask, λ(t i ) represents task t i The ratio of man-machine resources, Bug * Represented as task t i The total budget allocated, Acc * Represents task t i The minimum confidence / accuracy, δ h is the human estimation accuracy, δm is the machine estimation accuracy, n(s) is the number of subtasks corresponding to the human or machine computing resources, n h (t i ) represents the subtask assigned to human workers, n m (t i ) represents the subtask assigned to the machine.

[0057] In this embodiment, the task constraints include two parts: one is the functional requirements, including requirements for computing properties (processing power, storage space, etc.); the other is the non-functional requirements including requirements for cost, processing time, etc.: Assume c h (s i )>c m (s i ) and δ h >Acc*>δ m , then the subtask allocation between humans and machines needs to satisfy the required Acc* and Bug*. Based on λ(t i ), the task constraints are defined as follows:

[0058]

[0059] Among them, c h (s i ) represents the fee paid to human workers for each subtask, c m (s i ) represents the fee paid to the machine agent for each subtask, λ(t i ) represents task t i The ratio of man-machine resources, Bug * Represented as task t i The total budget allocated, Acc * Represents task t i The minimum confidence / accuracy, δ h is the human estimation accuracy, δm is the machine estimation accuracy, n(s) is the number of subtasks corresponding to the human or machine computing resources, n h (t i ) represents the subtask assigned to human workers, n m (t i ) represents the subtask assigned to the machine.

[0060] Optionally, the value range of λ is expressed as:

[0061]

[0062] In this embodiment, using equations (1) and (2), the key value that satisfies the constraint condition λ can be obtained:

[0063]

[0064] After the above constraints, the embodiment of the present invention regards the predefined RSA problem as a graph path search process. Given a set of computing units U = {u 1 ,u 2 ,...,u m } and a decomposed subtask set S = {s 1 ,s 2 ,...,s n}, a directed acyclic graph can be constructed to represent the solution space, where each main vertex represents a candidate solution unit. The purpose of the Suitability-based Task Allocation Mechanism (STAM) is to find an optimized allocation solution A in the search space S×U. Generally, the general aggregation algorithm of STAM can be expressed as F = {f|f:Ω |S|×|U| →Ω |S|}. More specifically, a solution unit is represented as a tuple su i,k = {s i, u k}, which means allocating s i to the computing unit u k , where s i ∈ S and u k ∈ U. In addition, for all u k ∈ U, the directed edge created from su i,k to su j,k reveals the possible observation order of adjacent subtasks, where 1 ≤ i < j ≤ n. To solve the problem more conveniently, a virtual source vertex su S and a virtual target vertex are added at the start and end of the graph respectively, su D where the virtual vertices do not consume any computing resources. Therefore, the solution to the RSA problem is to find a path from su S to su D . For example, a suitable solution su S → su 1,a → su 2,b →... → su n,m → su D represents a set of allocations A = {(s 1 ,u a ),(s 2 ,u b ),...,(s n ,u m )}.

[0065] Quality assessment strategy based on fuzzy rules: In HMC-oriented application scenarios, the inaccuracy of human ability measurement is an issue that cannot be ignored, and accurate quantification of required human skills may be a burden on the system. For example, "C++ programmers with problem-solving ability ≥ 0.85" can actually be expressed as "C++ programmers with excellent problem-solving ability". Compared with explicit numerical indications, this linguistic approximate description helps to understand and derive requirements in the hmOS system of the present invention. Based on the above considerations, a fuzzy rules based quality estimation method (FRQE) is proposed. In this strategy, trapezoidal membership functions are used to model fuzzy rules for quality. Let F represent a fuzzy attribute that a computing unit should have (the degree required for different tasks varies), F 1 ,F 2 ,...,F n is a fuzzy rule for attribute F. The present invention can adopt an example of a membership function (MF) of a four-level fuzzy quality rule, where the membership function of each level is similar to a trapezoid. i The numerical quality value f(u i ), you can use the function To measure the value of the given fuzzy quality rule F j As before, a task consists of a set of subtasks S, each of which has a set of required capabilities. In this case, the fuzzy quality rule is used for q i The task allocation engine tries to retrieve a set of computing units U' = {u 1 ,u 2 ,...,u l }, to maximize in Indicates that each s i ∈S The total membership function on the intersection of the required quality fuzzy rules. The present invention can be established by using the min operation in the following way

[0066]

[0067] in is the mass q k The membership function of is the computational unit u i In the ability cp k In addition, for the above STAM, the optimized allocation solution A* can be represented as a graph G*=(U*,E*), where and The connectivity of G* can be measured by the average weighted degree of all vertices: conn(G*) = (∑ e∈E 2·weight(e)) / |U * |, where weight(e) represents the weight of the edge. Therefore, the maximized connection quality q conn You can also to estimate, and the results are expressed as poor, fair, good, or excellent connections.

[0068] Result fine-tuning strategy based on iterative feedback: After completing the above quality assessment, it is necessary to fine-tune the results to meet the needs of users. In order to obtain high-quality results, the present invention proposes an iterative feedback framework on result tuning (IFRT) in the hmOS system. Once the above FRQE generates fuzzy quality, the iterative feedback component (Iterative Feedback) will check whether the aggregation result can be further improved: if the result meets the requirements, the iterative process will terminate; otherwise, the iterative execution of the adjustment process will be started. The iterative feedback (IF) problem is defined as: let t be the task to be executed, O t is the output result of task t, I t and I t ′ are the inference results of the current iteration and the previous iteration respectively. The main purpose of the IF problem is to determine whether to terminate the iteration process; based on the IF definition, the goal of IFRT is to find a result that meets the required quality. Therefore, the present invention defines a relation symbol > to determine two iteration candidate results by comparing the final numerical quality value f(t). It can be considered that I t Better than I t To solve this problem, the ability of human participants can be considered to determine whether the current loop meets the final termination condition.

[0069] In an embodiment of the present invention, a task management module, a coordinator module, a resource manager module and an interactive view module are provided, wherein the coordinator module is connected to the task management module and the resource manager module, and the coordinator module is connected to the interactive view module; the task management module is used to obtain a new task, sort and decompose the new task according to the task priority, obtain a subtask set of the new task, and pass the subtask set to the coordinator module for processing; the coordinator module is used to obtain the allocation result of the human-machine computing resources of the subtask set based on the subtask set, call the computing resources corresponding to the allocation result suitable for the subtask from the resource manager module based on the allocation result, calculate the subtask based on the computing resources, and obtain the target result, wherein the allocation result includes the sequence of subtasks suitable for processing by human computing resources or machine computing resources, the computing resources include human computing units or machine computing units, the coordinator module includes a human-machine collaboration mode, the human-machine collaboration mode is used to ensure mutual coordination between computing resources, and the coordinator includes a system monitoring and analysis framework, which monitors the running status of the system architecture and optimizes the system architecture. Adjustment; Resource manager module: used to discover human-machine computing resources, store multiple human-machine computing resources, and provide the required computing resources for the coordinator module, wherein the human-machine resources include human resources and machine resources; Interactive view module: used to display the machine computing unit calculation results in the target results processed by the machine in the coordination module for users to process, and display the human computing unit processing tasks. Users also need to create tasks through the interactive interface, view the task status, and obtain the final processing results. The human-machine computing model algorithm is highly coupled with the application scenario, lacks a universal and scalable system architecture, and is difficult to provide a flexible and optional human-machine collaboration mode for a single scenario. The random parameters and uncertainty factors of real-time diversified tasks greatly increase the difficulty of task processing, resulting in low task service quality and efficiency. The technical effect is achieved by providing a system architecture oriented to human-machine computing, decomposing tasks into human tasks and machine tasks, calculating human tasks through human computing units, and calculating machine tasks through machine units. In the calculation process, the task conditions are constrained to obtain the ratio of the number of human-machine resources, thereby improving the task service quality and efficiency.

[0070] The serial numbers of the above embodiments of the present invention are only for description and do not represent the advantages or disadvantages of the embodiments.

[0071] In the above embodiments of the present invention, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0072] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0073] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed over multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0074] In addition, each functional unit in each embodiment of the present invention may be integrated into a first processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0075] The above are only preferred embodiments of the present invention. It should be pointed out that, for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.< / condition>

Claims

1. A system architecture for human-computer computing, characterized in that: include: A task management module, a coordinator module, a resource manager module and an interactive view module, wherein the coordinator module is connected to the task management module and the resource manager module, and the coordinator module is connected to the interactive view module; The task management module is used to obtain new tasks, sort and decompose the new tasks according to task priorities, obtain a subtask set of the new tasks, and pass the subtask set to the coordinator module for processing; A coordinator module is used to obtain the allocation result of the human-machine computing resources of the subtask set based on the subtask set, call the computing resources corresponding to the allocation result suitable for the subtask from the resource manager module based on the allocation result, calculate the subtask based on the computing resources, and obtain the target result, wherein the allocation result includes the sequence of subtasks suitable for human computing resources or machine computing resources to process, the computing resources include human computing units or machine computing units, the coordinator module includes a human-machine collaboration mode, the human-machine collaboration mode is used to ensure mutual coordination between computing resources, and the coordinator includes a system monitoring and analysis framework, the system monitoring and analysis framework monitors the operating status of the system architecture and optimizes and adjusts the system architecture; A resource manager module, used to discover human-machine computing resources, store a variety of human-machine computing resources, and provide the required computing resources for the coordinator module, wherein the human-machine resources include human resources and machine resources; The interactive view module is used to display the calculation results of the machine computing unit in the target results after machine processing in the coordination module for user processing, and to display the human computing unit processing tasks. Users also need to create tasks through the interactive interface, view task status, and obtain the final processing results.

2. The method according to claim 1, characterized in that The expression of the new task is: t=(T,S,C,O) (1) Wherein, T represents the task type, S represents a subtask set decomposed from a task, C represents a constraint set of the task, and O represents that the target set is different, wherein the subtask set decomposes a task according to a decomposition operator.

3. The method according to claim 2, characterized in that A single task t consists of a set of subtasks Composition, among which, s i Represents the description of the subtask, Defines a set of execution subtasks i Required capabilities, cp i The functional requirements required for the subtask are defined, and the quality level of the required capability is q i , Defines the representation subtask s i The constraints based on non-functional requirements.

4. The method according to claim 1, characterized in that Decompose and sort the new task to obtain subtasks of the new task, including: The new task is initially decomposed into the subtasks by decomposition operators which control the temporal execution order of the subtasks.

5. The method according to claim 1, characterized in that The process of obtaining the allocation result of the human-machine computing resource of the subtask based on the subtask may also be: Based on the types of the subtasks, the subtask set is divided into human subtasks and machine subtasks.

6. The method according to claim 5, characterized in that The expression for dividing the subtask set into subtasks suitable for humans and subtasks suitable for machines is: n(t i )=n h (t i )+n m (t i ) (2) Among them, n(t i ) represents the total number of subtasks in the new task, where t i Indicates the type of each subtask, n h (t i ) represents the subtask assigned to human workers, n m (t i ) represents the subtask assigned to the machine.

7. The method according to claim 1, characterized in that The process of processing the subtask based on the computing model also satisfies the task-level constraint condition, and the task constraint condition is defined as: Among them, c h (s i ) represents the fee paid to human workers for each subtask, c m (s i ) represents the fee paid to the machine agent for each subtask, λ(t i ) represents task t i The ratio of man-machine resources, Bug * Represented as task t i The total budget allocated, Acc * Represents task t i The minimum confidence / accuracy, δ h is the human estimation accuracy, δ m is the machine estimation accuracy, n(s) is the number of subtasks corresponding to human or machine computing resources, n h (t i ) represents the subtask assigned to human workers, n m (t i ) represents the subtask assigned to the machine.

8. The method according to claim 7, characterized in that The value range of λ is expressed as:

9. A processor, characterized in that: The processor is used to run a program, wherein the program executes the method according to any one of claims 1 to 8 when running.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium includes a stored program, wherein when the program is executed, the device where the computer-readable storage medium is located is controlled to execute the method according to any one of claims 1 to 8.