Intelligent progress control method and system for clinical trials

CN122822185APending Publication Date: 2026-09-25BEIJING SHANPENG TECH DEV CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610912022.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-24
Publication Date
2026-09-25

AI Technical Summary

Technical Problem

[0003]然而,当多个中心对某一数据点反复发起质疑,甚至形成互相指向的质疑回路时,数据点将长期处于质疑未关闭状态,导致数据清理进度陷入停滞

Benefits of technology

本发明通过构建争议传播图并基于有向边的反方向递归追溯,能够自动为每个数据点生成依赖源节点集合,进而通过比较集合的完全一致性识别出进度死锁区域,克服了传统人工逐条回溯质疑记录难以发现多数据点之间隐含依赖关系的缺陷,实现了死锁区域的定量化、自动化判定,避免了因主观判断而遗漏死锁或误判正常争议区域的问题,同时通过依赖源节点有序序列与集合签名进行快速匹配,无需逐对比较所有节点,提升了在大量数据点与复杂质疑交互场景下的计算效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122822185A_ABST
    Figure CN122822185A_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of progress control, and discloses a clinical trial progress intelligent control method and system, the method comprises the following steps: obtaining the doubt record chain associated with each data point in the data cleaning stage; analyzing the bidirectional interaction relationship between the doubt initiation center and the doubt receiving center in the doubt record chain, taking the data point as a node and the bidirectional interaction relationship as a directed edge, and constructing a dispute propagation graph; starting from each node in the dispute propagation graph, recursively tracing in the opposite direction of the directed edge, and generating a dependent source node set for each node; if the dependent source node sets of two nodes are completely same, the two nodes are classified into the same candidate set, and the present application can solve the problem that when multiple centers repeatedly initiate doubts on a data point, even forming a mutual pointing doubt loop, the data point will be in a long-term doubt unclosed state, resulting in a stagnation of the data cleaning progress.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of progress management technology, and in particular to an intelligent method and system for managing the progress of clinical trials. Background Technology

[0002] In the process of experimental data management, the data cleaning phase is a crucial step in ensuring the accuracy and reliability of experimental results. During this phase, multiple central nodes may raise questions about the same data point to clarify any data anomalies or inconsistencies. Existing experimental data management typically uses a questioning record chain to track the exchange of each question and response, with each center independently initiating or responding to questions based on its own responsibilities.

[0003] However, when multiple centers repeatedly question a particular data point, or even form a loop of questioning that points to each other, the data point will remain in a state of unresolved questioning for a long time, causing the data cleaning process to stagnate.

[0004] When dealing with the aforementioned multi-center disputes, there is a lack of structured analysis capabilities for the bidirectional interaction relationships in the chain of questioning records. It is impossible to automatically identify the spread of disputes between different data points due to the sharing of the same questioning propagation pattern. Secondly, traditional methods rely solely on manual backtracking of questioning records one by one to locate the root cause of the dispute. When multiple data points are interdependent and form a progress deadlock, it is impossible to quantitatively determine which data points have the exact same set of dependent source nodes, thus making it difficult to accurately pinpoint the deadlock area. The lack of an automated arbitration node assignment mechanism when resolving deadlocks usually requires the intervention of project managers, which is inefficient and prone to overlooking the central node that first raised the objection.

[0005] Therefore, there is an urgent need for a management system that can automatically identify deadlocked areas in the clinical trial data cleaning phase and intelligently assign arbitration nodes to replace the existing manual coordination model and improve data cleaning efficiency. Summary of the Invention

[0006] This invention provides a method and system for intelligent management and control of clinical trial progress, the main purpose of which is to address the problems raised in the background section above.

[0007] To achieve the above objectives, the present invention provides an intelligent management method for clinical trial progress, comprising: S1. Obtain the chain of questioning records associated with each data point during the data cleaning phase; S2. Analyze the bidirectional interaction relationship between the question initiation center and the question receiving center in the question record chain, and construct a dispute propagation graph with the data points as nodes and the bidirectional interaction relationship as directed edges; S3. Starting from each node in the dispute propagation graph, recursively trace back along the opposite direction of the directed edges to generate a set of dependent source nodes for each node; S4. If the dependent source node sets of two nodes are exactly the same, then the two nodes are classified into the same candidate set. When the number of nodes in the candidate set is not zero, the candidate set is determined to be a progress deadlock region. S5. Backtrack the chain of challenge records for the data points in the progress deadlock area, locate the earliest challenge initiation center, and mark the challenge initiation center as the arbitration node of the progress deadlock area. S6. Grant the arbitration node the decision-making authority for all data points within the progress deadlock area, and temporarily lock other central nodes within the progress deadlock area until the arbitration node completes the decision and outputs an unlock command.

[0008] Preferably, the chain of questioning records associated with each data point during the data cleaning phase includes: Read the task status markers of the data cleaning phase and filter out the identifiers of data points that are in the questioned but not closed state; Query the challenge records associated with the identifier in ascending order of time, and verify the chain integrity of the parent record number in the challenge records to obtain a linear challenge record sequence; The linear challenge record sequence is output using the identifier as the index key to obtain the challenge record chain.

[0009] Preferably, the step of parsing the bidirectional interaction between the question initiation center and the question receiving center in the question record chain includes: Extract the question initiation center identifier and question receiving center identifier from the question record chain to obtain the directed interaction edge sequence; Sequentially detect whether there are two adjacent edges forming a closed loop in the directed interactive edge sequence, and record them as a bidirectional disputed loop, anchoring the center pair of the bidirectional disputed loop; The center pairs are merged and counted, and the center pairs that appear only in a single data point are removed to obtain stable interactive center pairs; Each of the stable interaction centers is bidirectionally interconnected and calibrated to obtain the bidirectional interaction relationship of the questioning record chain.

[0010] Preferably, the step of constructing a dispute propagation graph using the data points as nodes and the bidirectional interaction relationships as directed edges includes: The mapping relationship between the identifiers of the data points and the chain of questioning records is extracted in a node-based manner to obtain the dispute propagation nodes; Bidirectional directed edges are generated for the stable interaction center pairs in the bidirectional interaction relationship mapping to obtain directed edges; Associate the dispute propagation nodes corresponding to the directed edges to obtain the attribution table, and construct the dispute propagation graph based on the attribution table.

[0011] Preferably, the step of recursively tracing back along the opposite direction of the directed edges from each node in the dispute propagation graph to generate a set of dependent source nodes for each node includes: Step 1: Extract the questioning start position and questioning end position from the questioning record chain corresponding to the node in the dispute propagation graph to obtain the entry chain start number and exit chain end number of the node; Step 2: Starting from the node mentioned above and determining it as the current node, locate all incoming edges in the dispute propagation graph that have the current node as the destination of the directed edge; Step 3: Locate the starting node of each incoming edge and compare whether the starting index of the incoming chain of the starting node is less than the ending index of the outgoing chain of the current node. If it is less, mark the starting node as a first-level reverse reachable point. Step 4: Treat each of the first-level reverse reachable points as a new current node, and repeat steps 2 and 3 until there are no new incoming edges to trace, in order to obtain a multi-level reverse tracing tree; Step 5: Perform node deduplication on the multi-level reverse tracing tree of each current node and remove the current node itself to obtain the dependent source node set.

[0012] Preferably, if the dependency source node sets of two nodes are exactly the same, then classifying these two nodes into the same candidate set includes: Extract the identifiers from the set of dependent source nodes and sort them in ascending order to obtain an ordered sequence of dependent source nodes; The identifiers in the ordered sequence of the dependent source nodes are concatenated into a string in order to obtain the set signature; Nodes with the same set signature are grouped into the same temporary container to obtain node groups; A candidate set is constructed based on the identifier in the node group.

[0013] Preferably, the step of determining the candidate set as a progress deadlock region when the number of nodes in the candidate set is not zero includes: Count the number of nodes in the candidate set and determine whether the number of nodes is greater than zero to obtain a non-empty tag; The candidate set marked as "yes" is determined to be a progress deadlock region.

[0014] Preferably, the step of tracing back the chain of challenge records for the data points in the progress deadlock region, locating the earliest challenge initiating center, and marking the challenge initiating center as the arbitration node of the progress deadlock region includes: Based on the identifier in the progress deadlock region, the corresponding challenge record chain is locked to obtain the record chain set; Record the first questioning record in the record chain set, and record the questioning initiation center identifier and initiation timestamp of the first questioning record to obtain the first questioning record set; Compare the initiation timestamps of each subset in the first set of challenge records, and determine the challenge initiation center identifier with the earliest initiation timestamp as the earliest challenge initiation center; Mark the earliest challenge initiation center in each of the aforementioned progress deadlock regions as the arbitration node.

[0015] Preferably, granting the arbitration node adjudication authority over all data points within the progress deadlock region and temporarily locking other central nodes within the progress deadlock region until the arbitration node completes its adjudication and outputs an unlock command includes: Grant the arbitration node the adjudication authority for all data points within the progress deadlock area, and set the operation status of other nodes within the progress deadlock area to temporary lock; Wait for the arbitration node to submit a ruling completion signal for each data point in the progress deadlock area until the ruling flag of all data points is completed. Clear the temporary lock in the progress deadlock area, restore the ruling permission to its original state, and output the unlock command.

[0016] A clinical trial progress intelligent management and control system, the system comprising: The data acquisition module is used to acquire the chain of questioning records associated with each data point during the data cleaning phase; The dispute propagation construction module is used to parse the bidirectional interaction relationship between the question initiation center and the question receiving center in the question record chain, and construct a dispute propagation graph with the data points as nodes and the bidirectional interaction relationship as directed edges; The dependency node generation module is used to generate a set of dependency source nodes for each node by recursively tracing back along the opposite direction of the directed edges, starting from each node in the dispute propagation graph. The deadlock region location module is used to classify two nodes into the same candidate set if the dependent source node sets of two nodes are completely identical, and to determine the candidate set as a progress deadlock region when the number of nodes in the candidate set is not zero. The backtracking module is used to backtrack the chain of challenge records for the data points in the progress deadlock area, locate the earliest challenge initiation center, and mark the challenge initiation center as the arbitration node of the progress deadlock area. The output module is used to grant the arbitration node the adjudication authority to all data points within the progress deadlock area, and temporarily lock other central nodes within the progress deadlock area until the arbitration node completes the adjudication and outputs an unlock command.

[0017] Compared with the prior art, the present invention has the following beneficial effects: This invention constructs a dispute propagation graph and uses reverse recursive tracing based on directed edges to automatically generate a set of dependent source nodes for each data point. By comparing the complete consistency of the sets, it identifies progress deadlock regions, overcoming the shortcomings of traditional manual backtracking of each challenge record, which makes it difficult to discover implicit dependencies between multiple data points. It achieves quantitative and automated determination of deadlock regions, avoiding the problem of missing deadlocks or misjudging normal dispute regions due to subjective judgment. At the same time, it quickly matches the ordered sequence of dependent source nodes with the set signature, eliminating the need to compare all nodes pairwise, thus improving computational efficiency in scenarios with a large number of data points and complex challenge interactions.

[0018] This invention automatically locates the earliest central node that initiated the challenge by tracing back the challenge record chain, and grants it the authority to adjudicate all data points within its region. At the same time, it temporarily locks the operating permissions of other central nodes, eliminating the chaos and duplication of work caused by multiple parties operating simultaneously. This ensures that the data points within the deadlock region can be adjudicated by a single arbitration node. After the arbitration node submits all adjudication completion signals, it automatically unlocks and restores its original permissions, thus ensuring the authority and integrity of the adjudication process and achieving a smooth transition after the deadlock is resolved. Attached Figure Description

[0019] Figure 1 This is a flowchart illustrating an intelligent management method for clinical trial progress according to an embodiment of the present invention. Figure 2 A functional module diagram of an intelligent clinical trial progress management system provided in an embodiment of the present invention; The objectives, features, and advantages of this invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0020] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0021] This application provides an intelligent management method for clinical trial progress. The executing entity of this intelligent management method for clinical trial progress includes, but is not limited to, at least one of the following electronic devices that can be configured to execute the method provided in this application: a server, a terminal, etc. In other words, the intelligent management method for clinical trial progress can be executed by software or hardware installed on a terminal device or a server device. The server includes, but is not limited to, a single server, a server cluster, a cloud server, or a cloud server cluster. The server can be an independent server or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks, and big data and artificial intelligence platforms.

[0022] Reference Figure 1 The diagram shown is a flowchart illustrating an intelligent clinical trial progress management method according to an embodiment of the present invention. In this embodiment, the intelligent clinical trial progress management method includes: S1. Obtain the chain of questioning records associated with each data point during the data cleaning phase; In this embodiment, the chain of challenge records associated with each data point during the data cleaning phase includes: Read the task status markers of the data cleaning phase and filter out the identifiers of data points that are in the questioned but not closed state; Query the challenge records associated with the identifier in ascending order of time, and verify the chain integrity of the parent record number in the challenge records to obtain a linear challenge record sequence; The linear challenge record sequence is output using the identifier as the index key to obtain the challenge record chain.

[0023] Specifically, the data cleaning phase refers to the process of verifying, questioning, responding to, and correcting the data points submitted by each central node in the experimental data management process.

[0024] Task status markers are labels used to identify the current processing status of each data point. Statuses include, but are not limited to, "question not closed", "question closed", and "pending verification". These markers are automatically maintained by the system based on the completion status of the question record chain.

[0025] The identifier of a data point is a unique number assigned to each data point in the system. This identifier is used to uniquely index, locate, and associate all challenge records of that data point throughout the system.

[0026] A challenge record refers to a record of an inquiry or objection raised by a central node to a specific data point during the data cleaning phase. Each challenge record includes fields such as the initiating center identifier, the receiving center identifier, the initiation timestamp, and the parent record number.

[0027] Specifically, the previous level record number is the number used in the chain of challenged records to point to the previous challenged record.

[0028] Chain integrity refers to the fact that in a questioning record sequence, the parent record number of each record can correctly point to the previous record.

[0029] A linear questioning record sequence refers to a set of questioning records arranged in ascending order of time and verified by the record number of the previous level.

[0030] Specifically, the index key is a unique identifier field used to quickly find or associate a record in the system. The identifier of a data point is used as the index key to output the chain of challenged records corresponding to that data point.

[0031] A chain of challenge records refers to a complete set of challenge records organized chronologically using the identifier of a data point as the index key. This chain reflects the complete interaction process of a data point from the first challenge to the last response.

[0032] In detail, the task status markers of the data cleanup phase stored in the database are read, all data points with the status of "question not closed" are filtered out, and the identifiers of these data points are extracted. Based on each identifier, all the question records associated with that identifier are queried in the question record table and sorted in ascending order by time.

[0033] To ensure the traceability of records, a chain integrity check will be performed on the parent record number of each questioned record to check for missing, duplicate, or incorrect pointers. Records that pass the check will be organized into a linear questioned record sequence.

[0034] Furthermore, the sequence is output as the chain of challenge records corresponding to the current data point, using the identifier of the current data point as the index key.

[0035] S2. Analyze the bidirectional interaction relationship between the question initiation center and the question receiving center in the question record chain, and construct a dispute propagation graph with the data points as nodes and the bidirectional interaction relationship as directed edges; In this embodiment, parsing the bidirectional interaction between the question initiation center and the question receiving center in the question record chain includes: Extract the question initiation center identifier and question receiving center identifier from the question record chain to obtain the directed interaction edge sequence; Sequentially detect whether there are two adjacent edges forming a closed loop in the directed interactive edge sequence, and record them as a bidirectional disputed loop, anchoring the center pair of the bidirectional disputed loop; The center pairs are merged and counted, and the center pairs that appear only in a single data point are removed to obtain stable interactive center pairs; Each of the stable interaction centers is bidirectionally interconnected and calibrated to obtain the bidirectional interaction relationship of the questioning record chain.

[0036] Specifically, the challenge initiation center identifier is a code or name used to uniquely identify the center node that initiates the challenge, and each center node is assigned this identifier.

[0037] The challenge receiving center identifier is a code or name used to uniquely identify the central node that receives challenges. The challenge receiving center is usually the node that is asked to clarify or respond to data issues.

[0038] A directed interaction edge sequence refers to a directed edge extracted from a challenge record, consisting of a challenge initiation center identifier pointing to a challenge receiving center identifier.

[0039] Two adjacent edges refer to two directed edges that are consecutive in a directed interaction edge sequence, such as the i-th edge and the (i+1)-th edge.

[0040] A closed loop is defined as two directed edges where the endpoint of the first edge is the same as the starting point of the second edge, and vice versa, forming a bidirectional pointing structure where A points to B and B points to A.

[0041] A bidirectional disputed loop is a closed loop consisting of two adjacent edges, representing a disputed relationship between two centers that are mutually questioning each other.

[0042] Specifically, a center pair refers to the combination of identifiers of two center nodes that constitute a bidirectional dispute loop, an unordered set, such as: {center A, center B}.

[0043] Merge counting involves statistically analyzing the center pairs identified across all data points and recording the total number of times each center pair appears, i.e., how many different data points it appears in.

[0044] A single data point refers to a clinical trial data record with a unique identifier. A data point can be associated with one or more challenge records.

[0045] Stable interactive center pairs refer to center pairs that appear repeatedly across multiple data points. Specifically, after merging and counting, center pairs that appear more than once are retained.

[0046] Specifically, bidirectional interconnection calibration refers to formally marking the existence of a bidirectional questioning interaction relationship between the two central nodes in a stable interaction center pair, that is, explicitly establishing two directed edges in the system records: A pointing to B and B pointing to A.

[0047] A bidirectional interaction relationship refers to a questioning interaction structure extracted from all stable interaction center pairs, consisting of a set of bidirectional directed edges. This relationship is used to subsequently construct the dispute propagation graph.

[0048] In detail, the chain of questioning records corresponding to each data point is traversed, the questioning initiation center identifier and questioning receiving center identifier are read from each questioning record, and a directed interaction edge sequence is generated according to the original order of the questioning records in the chain.

[0049] Check each pair of adjacent directed edges in the sequence in turn to determine whether they form a closed cycle, i.e., the endpoint of the first edge is equal to the starting point of the second edge, and the endpoint of the second edge is equal to the starting point of the first edge. If a closed cycle is formed, record the cycle as a bidirectional disputed cycle and extract two center nodes from it as the center pair.

[0050] Furthermore, the center pairs identified in all data points are merged and counted, and the total number of times each center pair appears in different data points is counted. Center pairs that appear only in a single data point are removed, and center pairs that appear at least twice are retained to obtain stable interactive center pairs.

[0051] Two directed edges in opposite directions are established between these two central nodes to form a bidirectional interactive relationship in the chain of questioning records.

[0052] In this embodiment, constructing a dispute propagation graph using the data points as nodes and the bidirectional interaction relationships as directed edges includes: The mapping relationship between the identifiers of the data points and the chain of questioning records is extracted in a node-based manner to obtain the dispute propagation nodes; Bidirectional directed edges are generated for the stable interaction center pairs in the bidirectional interaction relationship mapping to obtain directed edges; Associate the dispute propagation nodes corresponding to the directed edges to obtain the attribution table, and construct the dispute propagation graph based on the attribution table.

[0053] Specifically, the mapping relationship refers to a data association structure that maps the identifier of each data point to its associated chain of challenge records. For example, maintaining a table in which one column is the identifier of the data point and the other column is the storage address or content of the chain of challenge records corresponding to that data point.

[0054] Node-based extraction refers to extracting the identifier of each data point in the above mapping relationship as an independent graph node and assigning that node a unique identity in the dispute propagation graph.

[0055] Specifically, a dispute propagation node is a graph node that is directly transformed from the identifier of a data point, and each dispute propagation node represents a data point.

[0056] The bidirectional interaction relationship mapping is a set of questioning interaction relationships consisting of all stable interaction center pairs and their bidirectional directed edges. This set clarifies which center nodes have bidirectional questioning relationships.

[0057] A stable interaction center pair refers to a combination of two center nodes that appear repeatedly in multiple data points.

[0058] Bidirectional directed edge generation refers to creating two directed edges in opposite directions for each stable interaction center pair simultaneously, one from center A to center B and the other from center B to center A, and recording these two edges as available directed edges.

[0059] Specifically, a directed edge represents the direction of question propagation from one central node to another. In a dispute propagation graph, a directed edge connects two dispute propagation nodes.

[0060] The attribution table is a table that records which dispute propagation nodes each directed edge is associated with. Each row of the table contains the identifier of a directed edge and a list of identifiers of the dispute propagation nodes to which the directed edge belongs.

[0061] A dispute propagation graph is a directed graph structure consisting of dispute propagation nodes and directed edges. It is used to represent a dispute propagation network formed by data points through common bidirectional interaction relationships.

[0062] In detail, first read the mapping relationship between the identifier of the data point and the chain of questioning records, traverse the identifier of each data point, and directly convert it into a vertex in the graph structure to obtain the dispute propagation node. Each node uses the identifier of the data point as a unique label.

[0063] Read the bidirectional interaction relationship mapping, extract each stable interaction center pair, and for each stable interaction center pair, create two directed edges in the directed edge set. The first edge points from the first center in the center pair to the second center, and the second edge points from the second center to the first center, thus forming a bidirectional connection.

[0064] Furthermore, each generated directed edge carries the identification information of the two central nodes it connects. Based on the central nodes involved in each directed edge, the system searches the attribution table to find which dispute propagation nodes' challenge record chains contain the bidirectional challenge record of that central pair.

[0065] Each directed edge is associated with all dispute propagation nodes that meet the conditions, and the association is recorded in the attribution table. This clarifies which dispute propagation nodes each directed edge belongs to. Based on the association records in the attribution table, a dispute propagation graph is constructed with the dispute propagation nodes as vertices and the directed edges as connecting edges.

[0066] S3. Starting from each node in the dispute propagation graph, recursively trace back along the opposite direction of the directed edges to generate a set of dependent source nodes for each node; In this embodiment, the step of recursively tracing back along the opposite direction of the directed edges from each node in the dispute propagation graph to generate a set of dependent source nodes for each node includes: Step 1: Extract the questioning start position and questioning end position from the questioning record chain corresponding to the node in the dispute propagation graph to obtain the entry chain start number and exit chain end number of the node; Step 2: Starting from the node mentioned above and determining it as the current node, locate all incoming edges in the dispute propagation graph that have the current node as the destination of the directed edge; Step 3: Locate the starting node of each incoming edge and compare whether the starting index of the incoming chain of the starting node is less than the ending index of the outgoing chain of the current node. If it is less, mark the starting node as a first-level reverse reachable point. Step 4: Treat each of the first-level reverse reachable points as a new current node, and repeat steps 2 and 3 until there are no new incoming edges to trace, in order to obtain a multi-level reverse tracing tree; Step 5: Perform node deduplication on the multi-level reverse tracing tree of each current node and remove the current node itself to obtain the dependent source node set.

[0067] Specifically, a node is an identifier that corresponds to a data point.

[0068] The starting position of the challenge refers to the position number of the first challenge record in the challenge record chain. This number indicates the order in which the data point corresponding to that node is first challenged.

[0069] The termination position of a challenge refers to the position number of the last challenge record in the challenge record chain. This number indicates the order in which the data point corresponding to that node was last challenged or responded to.

[0070] The entry chain start number is the value of the starting position of the challenge extracted from the challenge record chain corresponding to the node. This number indicates the earliest time sequence position of the node as the receiver being challenged.

[0071] Specifically, the chain termination sequence number is the value of the termination position of the challenge extracted from the challenge record chain corresponding to the node. This sequence number indicates the time sequence position of the last challenge issued by the node as the initiator.

[0072] The current node is the node being processed during the recursive tracing process. Initially, it is a starting node in the dispute propagation graph, and is subsequently replaced by a first-level reverse reachable node.

[0073] An incoming edge is a directed edge in a dispute propagation graph that terminates at the current node. That is, an edge whose arrow points to the current node.

[0074] The starting node is the node at the beginning of an incoming edge, that is, starting from this node and pointing to the current node through a directed edge.

[0075] A primary reachable node is one whose inbound chain start number is less than the outbound chain end number of the current node. This means that the starting node is earlier than the last challenge of the current node in time sequence, and therefore can be reached by tracing back in reverse.

[0076] Specifically, a multi-level backward tracing tree is a tree structure that expands step by step from the initial node by repeatedly searching for incoming edges and first-level backward reachable points. The root node of the tree is the initial node, and each level of child node is a first-level backward reachable point of the previous level node.

[0077] Node deduplication involves removing duplicate nodes from a multi-level reverse tracing tree, retaining only one occurrence of each node.

[0078] The dependency source node set is the set of all non-repeating nodes in the multi-level reverse tracing tree of a given node after removing its own nodes.

[0079] In detail, for each node, the starting position of the challenge is read from the challenge record chain corresponding to that node as the starting sequence number of the incoming chain, and the ending position of the challenge is read as the ending sequence number of the outgoing chain. Taking that node as the current node, all directed edges with the current node as the endpoint are searched in the dispute propagation graph, i.e., incoming edges.

[0080] Furthermore, for each incoming edge, locate its starting node and compare whether the starting index of the incoming chain of the starting node is less than the ending index of the outgoing chain of the current node: if it is less, mark the starting node as a first-level reverse reachable point.

[0081] Treat each first-level reverse reachable point as the new current node, and repeat the steps of finding incoming edges and comparing sequence numbers until no new incoming edges can be found.

[0082] More specifically, by gradually expanding through the above steps, a multi-level backward tracing tree is formed, starting from the initial node and tracing backward level by level. All nodes in the tree are deduplicated, duplicate nodes are removed, and the original current node in the tree, i.e. the starting node itself, is deleted. The set of remaining non-duplicate nodes is output as the set of dependent source nodes of the starting node.

[0083] S4. If the dependent source node sets of two nodes are exactly the same, then the two nodes are classified into the same candidate set. When the number of nodes in the candidate set is not zero, the candidate set is determined to be a progress deadlock region. In this embodiment, the step of grouping two nodes into the same candidate set if their dependent source node sets are completely identical includes: Extract the identifiers from the set of dependent source nodes and sort them in ascending order to obtain an ordered sequence of dependent source nodes; The identifiers in the ordered sequence of the dependent source nodes are concatenated into a string in order to obtain the set signature; Nodes with the same set signature are grouped into the same temporary container to obtain node groups; A candidate set is constructed based on the identifier in the node group.

[0084] Specifically, ascending order means rearranging all identifiers within the dependent source node set in ascending order according to their numerical or lexicographical order. For example, if the identifier is a numeric number, it is ordered by numerical value in ascending order; if it is a string, it is ordered by character encoding in ascending order.

[0085] An ordered sequence dependent on source nodes refers to a sequence of identifiers obtained by arranging them in ascending order. The order of the identifiers in this sequence is fixed and does not depend on the insertion order of the original set.

[0086] Sequential concatenation refers to linking identifiers in an ordered sequence into a continuous string by directly connecting the preceding and following identifiers.

[0087] A string is a sequence of characters obtained by concatenating identifiers in order. For example, if the identifiers are D001, D003, and D005, concatenating them will result in D001D003D005.

[0088] Specifically, a set signature is a unique identifier composed of strings. This signature is used to quickly compare whether two dependent source node sets are completely identical. If the identifier content and order of the two sets are consistent, the concatenated strings are the same, and the set signatures are also the same.

[0089] A temporary container is a data storage structure that is temporarily pre-created in memory to group storage nodes. This container can be a list, array, or mapping structure, used to temporarily store nodes with the same set signature.

[0090] Node grouping refers to the process of grouping all nodes with the same set signature into the same temporary container to form a node set.

[0091] Specifically, the candidate set refers to the set of identifiers of all nodes within the same node group, extracted from the node grouping. The candidate set is used to subsequently determine whether a progress deadlock region exists.

[0092] In detail, the process involves traversing the set of dependent source nodes, extracting all identifiers for each set of dependent source nodes, and sorting them according to ascending order to generate an ordered sequence of dependent source nodes.

[0093] The identifiers in the ordered sequence are concatenated one by one from beginning to end to form a continuous string, which serves as the set signature of the dependent source node set. Multiple temporary containers are created in memory beforehand, and each temporary container is used to store nodes with the same set signature.

[0094] Furthermore, all nodes are traversed, and the node identifier is placed into a temporary container corresponding to the signature based on the set signature calculated for each node. After all nodes are assigned, the nodes stored in each temporary container constitute a node group, that is, all nodes that have the same dependency source node set are grouped into the same group.

[0095] Extract the identifiers of all nodes from each node group to construct a candidate set, which is stored as a list of node identifiers.

[0096] In this embodiment, determining the candidate set as a progress deadlock region when the number of nodes in the candidate set is not zero includes: Count the number of nodes in the candidate set and determine whether the number of nodes is greater than zero to obtain a non-empty tag; The candidate set marked as "yes" is determined to be a progress deadlock region.

[0097] Specifically, the number of nodes refers to the number of node identifiers contained in the candidate set, which is obtained by counting the total number of elements in the candidate set.

[0098] The non-empty flag is a logical flag value, such as yes or no, true or false, used to indicate whether the number of nodes in the candidate set is greater than zero. If the number of nodes is greater than zero, the non-empty flag is marked as yes; if the number of nodes is equal to zero, the non-empty flag is marked as no.

[0099] A progress deadlock region refers to a set of data points corresponding to a candidate set marked as "yes" that are not empty. These data points are considered to have formed a disputed stagnation state of mutual dependence and inability to proceed during the data cleaning phase because they depend on the same source node set. This region will be marked as a deadlock range that requires arbitration intervention.

[0100] In detail, all node identifiers stored in the candidate set are read, their total number is calculated, and the number of nodes in the candidate set is obtained. Then, the number of nodes is judged. If the number of nodes is greater than zero, the corresponding non-empty flag is set to yes; if the number of nodes is equal to zero, it is set to no.

[0101] Furthermore, after traversing all candidate sets, those candidate sets marked as "yes" are selected as non-empty, and each such candidate set is determined as a progress deadlock region. The determined progress deadlock regions are marked and stored in the form of candidate sets.

[0102] S5. Backtrack the chain of challenge records for the data points in the progress deadlock area, locate the earliest challenge initiation center, and mark the challenge initiation center as the arbitration node of the progress deadlock area. In this embodiment, the step of tracing back the chain of challenge records for the data points in the progress deadlock region, locating the earliest challenge initiating center, and marking the challenge initiating center as the arbitration node of the progress deadlock region includes: Based on the identifier in the progress deadlock region, the corresponding challenge record chain is locked to obtain the record chain set; Record the first questioning record in the record chain set, and record the questioning initiation center identifier and initiation timestamp of the first questioning record to obtain the first questioning record set; Compare the initiation timestamps of each subset in the first set of challenge records, and determine the challenge initiation center identifier with the earliest initiation timestamp as the earliest challenge initiation center; Mark the earliest challenge initiation center in each of the aforementioned progress deadlock regions as the arbitration node.

[0103] Specifically, the record chain set refers to a set consisting of the challenge record chains corresponding to the identifiers of all data points within the progress deadlock region, and each element in the set is a complete challenge record chain.

[0104] The first question record refers to the first question record in a chain of question records, arranged in ascending order of time.

[0105] The challenge initiation center identifier is a code or name used to uniquely identify the central node that initiates the challenge. This identifier is recorded in a specific field of each challenge record.

[0106] The initiation timestamp is an automatically generated time stamp for each question record, accurately recording the moment the question record was initiated.

[0107] Specifically, the first challenge record set refers to the set formed by extracting the first challenge record from each challenge record chain in the record chain set and combining these first challenge records. The size of this set is equal to the number of data points in the progress deadlock region.

[0108] A subset refers to each element in the set of the first challenge records, that is, each first challenge record. Each subset contains the challenge initiation center identifier and initiation timestamp of a challenge record.

[0109] The earliest challenge initiation center refers to the challenge initiation center identifier corresponding to the challenge record with the earliest initiation timestamp among all the first challenge records. This center is considered to be the earliest initiator of the dispute in the progress deadlock area.

[0110] Specifically, an arbitration node is a central node that is marked as responsible for adjudicating all data points within a certain progress deadlock region. The earliest challenge-initiating center of each progress deadlock region is marked as the arbitration node of that region.

[0111] In detail, the reading progress deadlock area is read, and based on the identifiers of all data points contained in the area, the corresponding challenge record chain for each identifier is queried, and these challenge record chains are aggregated into a record chain set.

[0112] Iterate through each chain of challenge records in the set of record chains, extract the first challenge record in ascending order of time from each chain, and record the challenge initiation center identifier and initiation timestamp in that challenge record.

[0113] Furthermore, all the extracted first challenge records together constitute the first challenge record set. The initiation timestamps of each subset in the first challenge record set are compared, and the initiation timestamp with the smallest value, i.e. the earliest time, is found. The challenge initiation center identifier corresponding to this timestamp is determined as the earliest challenge initiation center of this progress deadlock area.

[0114] The earliest challenge initiation center identified in each progress deadlock region is marked as the arbitration node for that progress deadlock region.

[0115] S6. Grant the arbitration node the decision-making authority for all data points within the progress deadlock area, and temporarily lock other central nodes within the progress deadlock area until the arbitration node completes the decision and outputs an unlock command.

[0116] In this embodiment, granting the arbitration node adjudication authority over all data points within the progress deadlock region and temporarily locking other central nodes within the progress deadlock region until the arbitration node completes its adjudication and outputs an unlock command includes: Grant the arbitration node the adjudication authority for all data points within the progress deadlock area, and set the operation status of other nodes within the progress deadlock area to temporary lock; Wait for the arbitration node to submit a ruling completion signal for each data point in the progress deadlock area until the ruling flag of all data points is completed. Clear the temporary lock in the progress deadlock area, restore the ruling permission to its original state, and output the unlock command.

[0117] Specifically, adjudication authority refers to the operational power to make a final judgment, modify, or close a challenge on a data point. A central node with adjudication authority can perform adjudication operations on that data point.

[0118] Other nodes refer to all central nodes other than the arbitrator node within the same progress deadlock area.

[0119] Operation status is an operational identifier recorded for each data point by each central node. Operation status includes operational and temporary lockout.

[0120] Specifically, a temporary lock is a temporary operational state restriction. A central node in a temporary lock state cannot question, respond to, or adjudicate any data points within the progress deadlock area until the lock is cleared.

[0121] The arbitration completion signal is when the arbitration node informs the data point that the arbitration work has been completed after it has finished the arbitration operation on that data point.

[0122] Specifically, the adjudication flag is a status field set by the system for each data point to mark whether the data point has been adjudicated by the arbitration node. The values ​​of the adjudication flag include in progress and completed.

[0123] "Completed" is one possible value for the adjudication flag, indicating that the adjudication operation for this data point has been completed by the arbitration node and the system has received the adjudication completion signal.

[0124] Specifically, the unlock command is a control command generated after confirming that the adjudication flags of all data points within the progress deadlock area are complete. This command is used to notify the system to clear the temporary lock, restore the original permissions, and allow each node to resume normal operation.

[0125] The original state refers to the original operation permission configuration of each central node for the data points in the deadlocked progress area.

[0126] In detail, the identifiers of all data points within the progress deadlock area are read, and the adjudication authority of these data points is uniformly assigned to the arbitration node in the area. At the same time, the operation status field of all other nodes in the progress deadlock area except the arbitration node is modified to temporary lock, so that they cannot challenge or respond to any data point in the area.

[0127] Furthermore, the system continuously monitors the arbitration node's completion signal for each data point within the region. Upon receiving a signal from a data point, the system updates the data point's arbitration flag from "in progress" to "completed".

[0128] Continuously poll the adjudication flags of all data points in the region until they all become completed. At this point, clear the temporary locked state of all other nodes in the progress deadlock region, restore the adjudication authority of the arbitrator node to the original state of the data points in the region, and output the unlock command.

[0129] like Figure 2 The diagram shown is a functional block diagram of an intelligent clinical trial progress management system provided in an embodiment of the present invention.

[0130] The intelligent clinical trial progress management system 100 described in this invention can be installed in an electronic device. Depending on the functions implemented, the intelligent clinical trial progress management system 100 may include a data acquisition module 101, a dispute transmission construction module 102, a dependency node generation module 103, a deadlock region location module 104, a backtracking module 105, and an output module 106. The modules described in this invention can also be referred to as units, which are a series of computer program segments that can be executed by the processor of an electronic device and can perform a fixed function, stored in the memory of the electronic device.

[0131] In this embodiment, the functions of each module / unit are as follows: Data acquisition module 101 is used to acquire the chain of questioning records associated with each data point during the data cleaning phase; The dispute propagation construction module 102 is used to parse the bidirectional interaction relationship between the question initiation center and the question receiving center in the question record chain, and construct a dispute propagation graph with the data points as nodes and the bidirectional interaction relationship as directed edges. The dependency node generation module 103 is used to generate a set of dependency source nodes for each node by recursively tracing back along the opposite direction of the directed edges, starting from each node in the dispute propagation graph. Deadlock region location module 104 is used to classify two nodes into the same candidate set if the dependent source node sets of two nodes are completely identical, and to determine the candidate set as a progress deadlock region when the number of nodes in the candidate set is not zero. The backtracking module 105 is used to backtrack the chain of challenge records of the data points in the progress deadlock area, locate the earliest challenge initiation center, and mark the challenge initiation center as the arbitration node of the progress deadlock area. Output module 106 is used to grant the arbitration node the adjudication authority to all data points within the progress deadlock area, and temporarily lock other central nodes within the progress deadlock area until the arbitration node completes the adjudication and outputs an unlock command.

[0132] In the several embodiments provided by this invention, it should be understood that the disclosed methods and systems can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and other division methods may be used in actual implementation.

[0133] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0134] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in the form of hardware plus software functional modules.

[0135] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention.

[0136] The embodiments of this application can acquire and process relevant data based on artificial intelligence technology. Artificial intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.

[0137] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.

Claims

1. A method for intelligent management and control of clinical trial progress, characterized in that, The method includes: S1. Obtain the chain of questioning records associated with each data point during the data cleaning phase; S2. Analyze the bidirectional interaction relationship between the question initiation center and the question receiving center in the question record chain, and construct a dispute propagation graph with the data points as nodes and the bidirectional interaction relationship as directed edges; S3. Starting from each node in the dispute propagation graph, recursively trace back along the opposite direction of the directed edges to generate a set of dependent source nodes for each node; S4. If the dependent source node sets of two nodes are exactly the same, then the two nodes are classified into the same candidate set. When the number of nodes in the candidate set is not zero, the candidate set is determined to be a progress deadlock region. S5. Backtrack the chain of challenge records for the data points in the progress deadlock area, locate the earliest challenge initiation center, and mark the challenge initiation center as the arbitration node of the progress deadlock area. S6. Grant the arbitration node the decision-making authority for all data points within the progress deadlock area, and temporarily lock other central nodes within the progress deadlock area until the arbitration node completes the decision and outputs an unlock command.

2. The intelligent management and control method for clinical trial progress as described in claim 1, characterized in that, The chain of questioning records associated with each data point during the data cleaning phase includes: Read the task status markers of the data cleaning phase and filter out the identifiers of data points that are in the questioned but not closed state; Query the challenge records associated with the identifier in ascending order of time, and verify the chain integrity of the parent record number in the challenge records to obtain a linear challenge record sequence; The linear challenge record sequence is output using the identifier as the index key to obtain the challenge record chain.

3. The intelligent management and control method for clinical trial progress as described in claim 1, characterized in that, The process of analyzing the bidirectional interaction between the question initiation center and the question receiving center in the question record chain includes: Extract the question initiation center identifier and question receiving center identifier from the question record chain to obtain the directed interaction edge sequence; Sequentially detect whether there are two adjacent edges forming a closed loop in the directed interactive edge sequence, and record them as a bidirectional disputed loop, anchoring the center pair of the bidirectional disputed loop; The center pairs are merged and counted, and the center pairs that appear only in a single data point are removed to obtain stable interactive center pairs; Each of the stable interaction centers is bidirectionally interconnected and calibrated to obtain the bidirectional interaction relationship of the questioning record chain.

4. The intelligent management and control method for clinical trial progress as described in claim 3, characterized in that, The construction of the dispute propagation graph, using the data points as nodes and the bidirectional interaction relationships as directed edges, includes: The mapping relationship between the identifiers of the data points and the chain of questioning records is extracted in a node-based manner to obtain the dispute propagation nodes; Bidirectional directed edges are generated for the stable interaction center pairs in the bidirectional interaction relationship mapping to obtain directed edges; Associate the dispute propagation nodes corresponding to the directed edges to obtain the attribution table, and construct the dispute propagation graph based on the attribution table.

5. The intelligent management method for clinical trial progress as described in claim 1, characterized in that, Starting from each node in the dispute propagation graph, recursively tracing back along the reverse direction of the directed edges to generate a set of dependent source nodes for each node includes: Step 1: Extract the questioning start position and questioning end position from the questioning record chain corresponding to the node in the dispute propagation graph to obtain the entry chain start number and exit chain end number of the node; Step 2: Starting from the node mentioned above and determining it as the current node, locate all incoming edges in the dispute propagation graph that have the current node as the destination of the directed edge; Step 3: Locate the starting node of each incoming edge and compare whether the starting index of the incoming chain of the starting node is less than the ending index of the outgoing chain of the current node. If it is less, mark the starting node as a first-level reverse reachable point. Step 4: Treat each of the first-level reverse reachable points as a new current node, and repeat steps 2 and 3 until there are no new incoming edges to trace, in order to obtain a multi-level reverse tracing tree; Step 5: Perform node deduplication on the multi-level reverse tracing tree of each current node and remove the current node itself to obtain the dependent source node set.

6. The intelligent management and control method for clinical trial progress as described in claim 5, characterized in that, If two nodes have completely identical sets of dependent source nodes, then these two nodes will be grouped into the same candidate set, including: Extract the identifiers from the set of dependent source nodes and sort them in ascending order to obtain an ordered sequence of dependent source nodes; The identifiers in the ordered sequence of the dependent source nodes are concatenated into a string in order to obtain the set signature; Nodes with the same set signature are grouped into the same temporary container to obtain node groups; A candidate set is constructed based on the identifier in the node group.

7. The intelligent management method for clinical trial progress as described in claim 1, characterized in that, The step of determining the candidate set as a progress deadlock region when the number of nodes in the candidate set is not zero includes: Count the number of nodes in the candidate set and determine whether the number of nodes is greater than zero to obtain a non-empty tag; The candidate set marked as "yes" is determined to be a progress deadlock region.

8. The intelligent management method for clinical trial progress as described in claim 7, characterized in that, The process of tracing back the chain of challenge records for the data points in the progress deadlock region, locating the earliest challenge initiating center, and marking the challenge initiating center as the arbitration node of the progress deadlock region includes: Based on the identifier in the progress deadlock region, the corresponding challenge record chain is locked to obtain the record chain set; Record the first questioning record in the record chain set, and record the questioning initiation center identifier and initiation timestamp of the first questioning record to obtain the first questioning record set; Compare the initiation timestamps of each subset in the first set of challenge records, and determine the challenge initiation center identifier with the earliest initiation timestamp as the earliest challenge initiation center; Mark the earliest challenge initiation center in each of the aforementioned progress deadlock regions as the arbitration node.

9. The intelligent management and control method for clinical trial progress as described in claim 1, characterized in that, The process of granting the arbitration node adjudication authority over all data points within the progress deadlock region and temporarily locking other central nodes within the progress deadlock region until the arbitration node completes its adjudication and outputs an unlock command includes: Grant the arbitration node the adjudication authority for all data points within the progress deadlock area, and set the operation status of other nodes within the progress deadlock area to temporary lock; Wait for the arbitration node to submit a ruling completion signal for each data point in the progress deadlock area until the ruling flag of all data points is completed. Clear the temporary lock in the progress deadlock area, restore the ruling permission to its original state, and output the unlock command.

10. A clinical trial progress intelligent management and control system, used to implement the clinical trial progress intelligent management and control method according to any one of claims 1-9, characterized in that, The system includes: The data acquisition module is used to acquire the chain of questioning records associated with each data point during the data cleaning phase; The dispute propagation construction module is used to parse the bidirectional interaction relationship between the question initiation center and the question receiving center in the question record chain, and construct a dispute propagation graph with the data points as nodes and the bidirectional interaction relationship as directed edges; The dependency node generation module is used to generate a set of dependency source nodes for each node by recursively tracing back along the opposite direction of the directed edges, starting from each node in the dispute propagation graph. The deadlock region location module is used to classify two nodes into the same candidate set if the dependent source node sets of two nodes are completely identical, and to determine the candidate set as a progress deadlock region when the number of nodes in the candidate set is not zero. The backtracking module is used to backtrack the chain of challenge records for the data points in the progress deadlock area, locate the earliest challenge initiation center, and mark the challenge initiation center as the arbitration node of the progress deadlock area. The output module is used to grant the arbitration node the adjudication authority to all data points within the progress deadlock area, and temporarily lock other central nodes within the progress deadlock area until the arbitration node completes the adjudication and outputs an unlock command.