Taskered marathon event point management system and method
By using a task-oriented marathon event points management system, a multi-level detection architecture and task dependency graph are employed to achieve rapid and accurate calculation of marathon event points. This solves the problems of low efficiency and poor accuracy in existing technologies and improves the level of process standardization in event management.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-05
- Publication Date
- 2026-04-07
AI Technical Summary
The existing marathon event points management system is inefficient, with low data processing efficiency and poor accuracy. Furthermore, the data connection between multiple events is not smooth, making points calculation cumbersome and prone to errors.
The task-oriented marathon event points management system accurately identifies abnormal data through a multi-level integrated detection architecture, constructs a task dependency graph concurrent recalculation mechanism, and combines flexible points rule configuration to achieve rapid synchronous updates of points calculation.
It significantly improves data processing efficiency and accuracy, ensures the process and standardization of points management, reduces manual operation costs, and guarantees data consistency and security.
Smart Images

Figure CN121807944A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of computer software and sports event management technology, and in particular to a task-oriented marathon event points management system and method. Background Technology
[0002] The statements in this section are merely background information related to the present invention and do not necessarily constitute prior art.
[0003] Marathon race points management systems are a crucial component of modern sports competition management. By quantifying athlete performance, they provide objective data for race organization, athlete level assessment, and race matching. With the global popularity of marathons, the number of participants has grown exponentially, with dozens of races held annually and thousands to tens of thousands of participants per race. Traditional points management methods, often involving manual calculation of points and rankings, are inefficient and error-prone, failing to meet the demands of modern marathon race points management. Therefore, computer software-based points management systems have been proposed. By importing race performance data and invoking preset calculation rules, these systems can quickly calculate the points and rankings of each participant in a current marathon race.
[0004] However, existing marathon event point management systems still have certain shortcomings. For example, existing systems usually calculate points directly based on imported data, lacking data validation, or the validation of imported data relies on manual checks. A large number of suspected abnormal or invalid data need to be manually checked one by one, making it impossible to quickly filter invalid data. Furthermore, it is easy to miss or misdetect abnormal data, reducing data processing efficiency and affecting subsequent point calculation and ranking. Moreover, existing systems mostly calculate and manage points for a single event separately, without establishing an effective connection between multiple events. When the results data of a certain event are corrected (such as timing errors or changes in athlete information), all related point calculation tasks need to be manually traced and a global recalculation needs to be performed. This is not only cumbersome and time-consuming, but also prone to data inconsistencies due to human oversight, affecting the accuracy of the final points and ranking. Summary of the Invention
[0005] To address the shortcomings of existing technologies, this invention provides a task-oriented marathon race points management system and method. This system can efficiently import data from multiple races, employs a multi-level integrated detection architecture to accurately and intelligently detect abnormal data, combines flexible points rule configuration to execute points calculation tasks, and achieves rapid synchronous updates of marathon race points through a constructed task dependency graph and an efficient concurrent recalculation mechanism. This avoids chaotic task execution, improves the process and standardization of race points management, and solves problems such as low data processing efficiency, poor data accuracy, and rigid points management in existing technologies.
[0006] In a first aspect, the present invention provides a task-based marathon event points management system.
[0007] A task-oriented marathon race points management system includes: The data import module is used for batch importing structured marathon race data in multiple formats; The intelligent anomaly detection module is used to identify suspected abnormal data in the imported event data and supports manual review; The task creation module is used to create marathon event point calculation tasks and define the dependencies between tasks through data flow to build a task dependency graph. The points calculation module is used to perform points calculation tasks on the imported event data according to the preset points calculation rules. The concurrent recalculation and version management module is used to detect data changes, determine the tasks to be recalculated by combining the task dependency graph, perform incremental recalculation, and automatically create version snapshots for recalculated data. The data storage module is used to store the integral calculation results of all version snapshots using a multi-database collaborative architecture; The user interaction module provides a visual operation and query interface to display the score calculation results.
[0008] A further technical solution is that the data import module automatically performs data preprocessing during the import process. The data preprocessing includes format verification of the completion time, completion of missing fields, and deduplication of duplicate data in the athlete-event combination.
[0009] A further technical solution is that the intelligent anomaly detection module includes a rule engine layer, a statistical model layer, a machine learning model layer, and a manual review interface arranged sequentially. The rule engine layer filters out abnormal data based on preset hard rules; The statistical model layer uses Z-score or IQR algorithms to identify statistical outliers; The machine learning model layer uses the isolated forest algorithm and the LSTM-based autoencoder model to perform deep anomaly detection on the data and identify suspected abnormal data. The manual composite interface automatically aggregates all suspected abnormal data and detection evidence, providing a unified review interface and supporting manual verification.
[0010] A further technical solution is that the marathon event data includes: event identification information, athlete identification information, athlete performance information, ranking and group information; The process for identifying suspected anomalies in marathon event data is as follows: Based on preset hard rules, abnormal data is quickly screened, including: determining whether each contestant's performance exceeds the limits of human physiology, retrieving each contestant's historical best performance and determining whether the difference from the historical best performance exceeds a preset threshold. If the preset hard rules are met, a group analysis is performed on the scores of all players in the same event, and Z-score or IQR algorithms are used to identify outliers at the statistical level. The scores of the players corresponding to the outliers are abnormal data. If no outliers are found, an ensemble learning approach is adopted, using the isolated forest algorithm to identify outlier samples from global features, and an LSTM-based autoencoder model is used to learn the contestant's historical performance sequence to detect outliers that deviate from the individual's normal fluctuation range. It automatically aggregates all suspected abnormal data and detection evidence, and generates a unified review interface for manual verification.
[0011] A further technical solution, the construction of the task dependency graph, includes: Create marathon event point calculation tasks, including event-level tasks, annual summary tasks, and cross-year summary tasks; Based on the data flow direction between different tasks, a visual DAG task dependency graph is constructed to clarify the dependency relationship between different levels of computing tasks; among them, the competition-level task is the upstream task of the annual summary task, and the annual summary task is the upstream task of the cross-year summary task.
[0012] A further technical solution, the execution process of the integral calculation task, is as follows: Obtain comprehensive environmental data of the event venue and historical scores of all participants in the event; the comprehensive environmental data includes: geographical location, weather data, and track type; Based on the preset scoring rules and the acquired data, the imported event data is scored to obtain the final score result; different events correspond to different scoring rules and calculation parameters.
[0013] Further technical solutions, including concurrent recalculation and version management processes, are as follows: Check if the athlete performance information in the imported marathon event data has been changed; If a change occurs, identify the marathon event corresponding to the change in results, determine the task corresponding to the marathon event, retrieve the task dependency graph to determine all downstream tasks of the task, take all the determined tasks as the tasks to be recalculated, perform incremental recalculation based on the changed information, and update the score calculation results. Data version snapshots are automatically created before and after recalculation. These snapshots contain data change logs that record the changes, the operators, and the operation times. They also support backtracking to any historical version snapshot.
[0014] A further technical solution is that the multi-database collaborative architecture includes a MySQL database, a Redis cache, an InfluxDB database, and MinIO OSS; wherein, the MySQL database is used to store competition business data, basic information of contestants, and detailed scores; the Redis cache is used to store real-time rankings and the current scores of frequently accessed contestants; the InfluxDB database is used to store the time series data of contestants' historical scores; and MinIO OSS is used to persistently store imported original score files and version snapshot files.
[0015] Secondly, the present invention provides a task-based marathon event points management method.
[0016] A task-oriented marathon race points management method, implemented based on the task-oriented marathon race points management system proposed in the first aspect, includes: Batch import of structured marathon race data in multiple formats; Based on a multi-level detection architecture, suspected abnormal data in the imported event data is identified, and accurate event data is obtained after manual review. Create an integral calculation task and construct a task dependency graph based on the data flow; The system automatically retrieves the corresponding points calculation rules, performs points calculation on the imported event data, and obtains the points calculation results. Real-time detection of whether imported event data has changed; if data has changed, the task to be recalculated is determined by combining the task dependency graph and incremental recalculation is performed, and a version snapshot is automatically created for the recalculated data. Store the final data and display the scores and rankings.
[0017] A further technical solution is to identify suspected abnormal data in marathon event data. The process is as follows: Based on preset hard rules, abnormal data is quickly screened, including: determining whether each contestant's performance exceeds the limits of human physiology, retrieving each contestant's historical best performance and determining whether the difference from the historical best performance exceeds a preset threshold. If the preset hard rules are met, a group analysis is performed on the scores of all players in the same event, and Z-score or IQR algorithms are used to identify outliers at the statistical level. The scores of the players corresponding to the outliers are abnormal data. If no outliers are found, an ensemble learning approach is adopted, using the isolated forest algorithm to identify outlier samples from global features, and an LSTM-based autoencoder model is used to learn the contestant's historical performance sequence to detect outliers that deviate from the individual's normal fluctuation range. It automatically aggregates all suspected abnormal data and detection evidence, and generates a unified review interface for manual verification.
[0018] The above one or more technical solutions have the following beneficial effects: 1. This invention proposes a task-oriented marathon race points management system and method, which supports batch import and automated preprocessing of multi-format structured data, significantly improving the access efficiency of large-scale race data, reducing manual operation costs, and adapting to the data format requirements of different races. When importing data from multiple races, a multi-level integrated detection architecture is adopted, combining a rule engine, statistical model, and machine learning algorithm to accurately identify abnormal data from multiple dimensions, including global group characteristics and individual athlete historical characteristics. This significantly reduces the false negative and false positive rates of abnormal data, ensuring the quality of the data source for points calculation. Combined with flexible points rule configuration through a plug-in design, the system executes points calculation tasks and achieves rapid synchronous updates of marathon race points through a constructed task dependency graph and an efficient concurrent recalculation mechanism. This avoids chaotic task execution, improves the process and standardization of race points management, and solves problems such as low data processing efficiency, poor data accuracy, and rigid points management in existing technologies.
[0019] 2. This invention simultaneously constructs a DAG task dependency graph when creating a points calculation task. The DAG task dependency graph enables visualization and dynamic management of calculation tasks, clearly defining the dependencies between tasks. When a recalculation is triggered, the DAG graph can be used to quickly and accurately locate the affected task, avoiding task execution chaos. Combined with a dual incremental recalculation mechanism, it avoids the waste of resources from a full recalculation, significantly improving the recalculation efficiency after data changes and enhancing the process and standardization of event points management. In addition, version snapshot and rollback functions ensure that data changes are traceable and rollbackable, comprehensively guaranteeing data consistency and security. The multi-database collaborative storage architecture and concurrent processing mechanism ensure that the system can maintain high-efficiency calculation and response speed in large-scale data scenarios, meeting the business needs of rapid points updates and real-time ranking release.
[0020] Advantages of additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description
[0021] The accompanying drawings, which form part of this invention, are used to provide a further understanding of the invention. The illustrative embodiments of the invention and their descriptions are used to explain the invention and do not constitute an improper limitation of the invention.
[0022] Figure 1 This is a schematic diagram of the task-oriented marathon race points management system proposed in an embodiment of the present invention; Figure 2 This is a flowchart of the task-oriented marathon race points management method proposed in this embodiment of the invention; Figure 3 This is a flowchart illustrating the multi-level anomaly detection process in an embodiment of the present invention. Figure 4 This is a state transition diagram of the integral calculation task in an embodiment of the present invention; Figure 5 This is a schematic diagram of the recalculation and version management mechanism after data changes in an embodiment of the present invention; Figure 6 This is a schematic diagram of task dependencies constructed in an embodiment of the present invention; where (a) is the initial state of task dependencies; and (b) is the task dependency state during recalculation. Detailed Implementation
[0023] It should be noted that the following detailed descriptions are exemplary and are intended only to describe specific embodiments and to provide further explanation of the invention, and are not intended to limit the scope of exemplary embodiments of the invention. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. Furthermore, it should be understood that when the terms "comprising" and / or "including" are used in this specification, they indicate the presence of features, steps, operations, devices, components, and / or combinations thereof.
[0024] Example 1 This embodiment proposes a task-oriented marathon race points management system, employing a layered architecture design including a data access layer, a computing engine layer, a task management layer, a data storage layer, and an application service layer. The system front-end is built using Vue + ECharts to implement a visual interactive interface and data visualization, while the back-end is built using Spring Boot to construct a microservice architecture and concurrent task scheduling. Figure 1 As shown, the system incorporates a data import module, an intelligent anomaly detection module, a task creation module, a points calculation module, a concurrent recalculation and version management module, a data storage module, and a user interaction module in a multi-layered architecture. These modules work together to achieve full-process management of competition points.
[0025] In the aforementioned task-based marathon event points management system, the functions of each module are as follows: (1) The data import module, mounted on the data access layer, is used for batch importing structured marathon event data in multiple formats. Specifically, the system supports batch import of data in standard file formats such as CSV and Excel through corresponding interfaces. The imported data is structured data, and each record contains, but is not limited to, the following fields: Event identification information: Event ID, Event Name, Event Date; Contestant identification information: Contestant ID, Name, Gender, Age Group; Participant performance information: Finish time, in the format HH:MM:SS; Ranking and grouping information: Overall ranking, gender ranking, age group ranking, and group name.
[0026] As one implementation method, this module is also responsible for preprocessing the imported data. Specifically, during the import process, this module automatically performs data preprocessing, including format validation, missing field completion, and deduplication of duplicate player-event combinations, converting non-standardized data into a unified format that the system can recognize.
[0027] This design enables batch import and automated preprocessing of multi-format structured data, significantly improving the efficiency of accessing large-scale event data, reducing manual operation costs, and adapting to the data format requirements of different events.
[0028] (2) The intelligent anomaly detection module, mounted on the computing engine layer, is used to identify suspected abnormal data in the imported competition data and supports manual review. Specifically, the intelligent anomaly detection module adopts a multi-level integrated detection architecture to detect anomalies in the imported data. This multi-level architecture includes a rule engine layer, a statistical model layer, a machine learning model layer, and a manual review interface set up in sequence.
[0029] The system comprises several layers: a rules engine layer that filters out abnormal data based on pre-defined hard rules; a statistical model layer that uses Z-score or IQR algorithms to identify statistical outliers; a machine learning model layer that uses the isolated forest algorithm and an LSTM-based autoencoder model to perform deep anomaly detection and identify suspected anomalies; and a manual verification interface that automatically aggregates all suspected anomalies and detection evidence, providing a unified review interface for manual verification. Specifically, the process for identifying suspected anomalies in marathon race data is as follows: First, the data is imported into the rule engine layer. Based on the preset hard rules, abnormal data is quickly screened, including: determining whether each contestant's performance exceeds the limits of human physiology, retrieving each contestant's historical best performance and determining whether the difference from the historical best performance exceeds a preset threshold (such as 20%), and whether the ranking logic is contradictory. Then, if the preset hard rules are met, the statistical model layer is entered to perform group analysis on the scores of all players in the same competition. Z-score or IQR algorithm is used to identify outliers at the statistical level. The scores of the players corresponding to the outliers are abnormal data. If no anomalies are found, the process proceeds to the machine learning model layer. An ensemble learning approach is used, employing the isolated forest algorithm to identify anomalous samples from global features. An LSTM-Autoencoder model is then used to learn the contestant's historical performance sequence and detect anomalous performances that deviate from the individual's normal fluctuation range. Finally, all suspected abnormal data and detection evidence (i.e., corresponding records) are automatically aggregated, and a unified review interface is generated through the manual review interface. This allows operations personnel to make a final decision based on their experience and confirm whether to correct or retain the score.
[0030] By combining the aforementioned multi-level integrated detection architecture with rule engines, statistical models, and machine learning algorithms, anomalies can be identified from multiple dimensions, including global group characteristics and individual contestant historical characteristics. With the assistance of a manual review and collaboration mechanism, the rate of missed and false detections of abnormal data can be significantly reduced, ensuring the quality of the data source for score calculation.
[0031] (3) The task creation module is mounted on the task management layer. It is used to create marathon event point calculation tasks and define the dependencies between tasks through data flow to build a task dependency graph.
[0032] Specifically, the task of creating points calculation tasks for marathon events includes: event-level tasks (input raw performance data, output detailed points for a single event), annual summary tasks (input all event-level task outputs within a calendar year, output annual points and rankings), and cross-year summary tasks (input all annual summary task outputs, used for cross-year points updates), etc.
[0033] Furthermore, based on the data flow direction between different tasks, a visual directed acyclic graph (DAG) task dependency graph is automatically constructed to clarify the dependency relationships between computational tasks at different levels. For example, a competition-level task is an upstream task of an annual summary task, and an annual summary task is an upstream task of a cross-year summary task. In addition, this module also supports adding, deleting, and modifying data flow directions of tasks, synchronously and automatically updating the DAG task dependency graph, and triggering a refresh of the status of related tasks.
[0034] (4) The points calculation module is mounted on the calculation engine layer and is used to perform points calculation tasks on the imported competition data according to the preset points calculation rules.
[0035] Specifically, when performing the points calculation task, the system acquires comprehensive environmental data (such as geographical location, weather data, track type, etc.) of the event venue and the historical scores of all participants. It then retrieves the corresponding preset points calculation rules and performs points calculation on the imported and anomaly-detected valid event data to obtain the final points result. Different events correspond to different points calculation rules and parameters. The points calculation rules can be designed as plug-ins, and the calculation parameters involved in the rules can be configured and adjusted according to actual conditions.
[0036] In this embodiment, a scoring rule (or scoring logic) for a competition-level task is designed, which can be expressed as: Si=Base_Point(rank, group_size)*K_composite*K_performance+Bonus_Points; In the above formula, Si is the final calculated score; Base_Point(rank, group_size) is the basic score calculation function; K_composite is the comprehensive environmental coefficient, which can be designed by combining the difficulty coefficient of the event, the weather impact coefficient, the track type coefficient, the opponent strength coefficient, etc.; K_performance is the performance level coefficient, which can be set in a step-like manner from 1.0 to 1.15 according to whether the result breaks the record, creates a personal best, enters the top ten in history, etc.; Bonus_Points are extra reward points, including record-breaking rewards, consecutive participation rewards, first marathon rewards, etc., and corresponding reward points can be set accordingly.
[0037] Furthermore, the aforementioned basic integral calculation function can be expressed as: Base_Point(rank, group_size)=base_max*(1-log(rank) / log(group_size)); The aforementioned integrated environmental system can be adjusted according to actual conditions, and is represented as follows: K_composite= *k_difficulty+ *k_weather+ *k_course+ *k_opponent_strength; Where base_max is the configurable upper limit of base points, rank is the player's ranking within the group, and group_size is the total number of people in the group; The system uses configurable weights (totaling to 1), corresponding to the event difficulty coefficient k_difficulty, weather impact coefficient k_weather, track type coefficient k_course, and opponent strength coefficient k_opponent_strength, which can be automatically or manually adjusted according to the actual situation.
[0038] Preferably, the above-mentioned event difficulty coefficient k_difficulty is calculated and determined based on objective data of the current marathon course, using the following formula: k_difficulty = 1 + (total elevation gain / baseline A) * C1 + (average slope / baseline B) * C2; In this system, baseline value A (e.g., 1000 meters) and baseline value B (e.g., 5%) are set values, while C1 and C2 are empirical constants determined by summarizing historical data. For example, for a marathon in a flat city, this coefficient may be close to 1.0; while for a challenging trail race, this coefficient may reach 1.3 or higher. By obtaining the geographical location of the event and the type of course in the task, the above calculation rules are retrieved to calculate and determine the event difficulty coefficient.
[0039] The aforementioned weather impact coefficient k_weather is determined based on the weather data of the match day (i.e., obtaining the weather data of the host city of the event), and is calculated using a preset piecewise function.
[0040] The above calculation process incorporates an opponent strength coefficient, k_opponent_strength, which is applied when calculating points for each match. This coefficient quantifies the intensity of the competitive environment, ensuring that points are awarded effectively against strong opponents and guaranteeing the fairness of the points calculation. The system's calculation formula is as follows: k_opponent_strength=1+(Avg_Opponent_Score / Benchmark_Score)*S; Here, Avg_Opponent_Score is the average of the pre-match historical scores of all the player's opponents in this match; Benchmark_Score is the preset benchmark score, representing the level of top players; S is a configurable scaling factor used to adjust the extent to which the strength of the opponents affects the performance.
[0041] As one implementation method, a point calculation rule for an annual summary task is designed, where the year-end point = Where t is the time difference between the current year and the event year, and f(t) is the decay function, supporting multiple decay modes such as exponential, linear, and stepwise, with the exponential decay function used by default. , The attenuation coefficient is configurable and can be set directly through the configuration interface. Values are adjusted to adapt to the operational strategies of different competition leagues.
[0042] (5) Concurrent recalculation and version management module, mounted on the task management layer, is used to detect data changes, determine the tasks to be recalculated by combining the task dependency graph and perform incremental recalculation, and automatically create version snapshots for recalculated data.
[0043] Specifically, the concurrent recalculation and version management module detects changes to the original performance data or points rule configuration in real time, such as checking whether athlete performance information has changed in imported marathon event data. If a change is detected, the module identifies the marathon event corresponding to the performance change, determines the task corresponding to that marathon event, retrieves the DAG task dependency graph, automatically traces the source of the change upstream, and identifies all downstream tasks of that task. All identified tasks are then designated as tasks to be recalculated, i.e., accurately locating the subset of "dirty tasks" that need to be recalculated. Incremental recalculation is then performed based on the changed information to update the points calculation results. In this embodiment, incremental recalculation supports task-level incremental recalculation (i.e., recalculating only the affected task chain) and data-level incremental recalculation (recalculating only the affected athlete points records in the task). By performing recalculation concurrently through multi-threading, computational efficiency is improved.
[0044] By designing a DAG task dependency graph, the visualization and dynamic management of computational tasks can be achieved, the dependencies between tasks can be clarified, and the chaos in task execution can be avoided. When data changes are detected, the scope of impact can be accurately located. The dual incremental recalculation mechanism can avoid the waste of resources in full recalculation, greatly improve the recalculation efficiency after data changes, and improve the process and standardization of competition points management.
[0045] Furthermore, the system automatically creates data version snapshots before and after recalculation, including data change logs (to record the content of changes, the operator, and the time of the operation), and also supports historical version rollback, allowing users to switch to any historical version with one click, ensuring data security and traceability.
[0046] (6) Data storage module, mounted on the data storage layer, is used to store the integral calculation results of all version snapshots using a multi-database collaborative architecture.
[0047] In this embodiment, a multi-database collaborative architecture is adopted for data storage. The multi-database includes a MySQL database, a Redis cache, an InfluxDB database, and MinIO OSS. The MySQL database is used to store competition business data, basic information of contestants, and detailed scores. The Redis cache is used to store real-time rankings and current scores of frequently accessed contestants. The InfluxDB database is used to store time-series data of contestants' historical scores. MinIO OSS is used to persistently store imported original score files and version snapshot files.
[0048] Based on the above-mentioned multi-database collaborative storage architecture design, combined with the concurrent processing mechanism, the system can still maintain high-efficiency computing and response speed in large-scale data scenarios with tens of thousands of people in a single event and dozens of events per year, meeting the business needs of rapid score updates and real-time ranking release.
[0049] (7) User interaction module, which is mounted on the application service layer, is used to provide a visual operation and query interface to display the score calculation results.
[0050] In this embodiment, a visual interface is built based on Vue + ECharts, providing operation entry points such as data import, anomaly review, task management, points query, version rollback, and result export; it also supports real-time monitoring of the execution status of calculation tasks and visual viewing of anomaly detection reports, meeting the different operational needs of operators and contestants.
[0051] Example 2 This embodiment proposes a task-based marathon race points management method, which is implemented based on the task-based marathon race points management system proposed in Embodiment 1, such as... Figure 2 As shown, the overall process of this method is as follows: Step S1: Operators use the data import module to import multi-format structured marathon race data in batches.
[0052] Step S2: Based on the multi-level detection architecture in the intelligent anomaly detection module, the system automatically identifies suspected abnormal data in the imported event data. If suspected abnormal data is found, it is manually reviewed and corrected to obtain accurate event data.
[0053] Step S3: The operations staff creates an points calculation task through the task creation module, and automatically builds a task dependency graph based on the data flow of the created task.
[0054] Step S4: Based on the points calculation module, automatically retrieve the corresponding points calculation rules, perform points calculation tasks on the imported event data, obtain the points calculation results and display them.
[0055] Step S5: If a participant's score calculation result is incorrect, the data imported by the corresponding participant can be traced back and corrected. At this time, the concurrent recalculation and version management module in the system detects the data change, locates the affected task chain according to the DAG task dependency graph, determines the task to be recalculated and performs incremental recalculation, updates the score result and automatically creates a version snapshot for the recalculated data.
[0056] Step S6: If the data is correct, save the points and rankings, and end the points calculation and management process for the current marathon event.
[0057] Step S2 above performs multi-level anomaly detection, such as... Figure 3As shown, the detection process is as follows: Importing the original competition data, firstly, based on preset hard rules, quickly screening for abnormal data, such as retrieving each player's historical best score and determining whether the difference from the historical best score exceeds a preset threshold (20%); if not, then using a statistical model (such as Z-score or IQR algorithm), performing group analysis on the scores of all players in the same competition to detect whether there are statistical outliers; if no abnormalities are detected, then continuing with a machine learning model to detect whether the overall abnormal score exceeds the threshold, i.e., detecting abnormal scores that deviate from the individual's normal fluctuation range; all suspected abnormal data are automatically aggregated to a manual review queue, and after manual judgment confirms the abnormality, the data is corrected; if no abnormalities are found, it directly enters the subsequent score calculation process. This achieves a dual verification process of automatic detection and manual review, ensuring the validity and accuracy of the imported data.
[0058] In step S3 above, an integral calculation task is created and a task dependency graph is constructed, laying the foundation for subsequent concurrent recalculation.
[0059] Step S4 above executes the integral calculation task. The lifecycle state change process of this task is as follows: Figure 4 As shown, when a task is created, it is initially in the "Pending Execution" state. After the task is started, it enters the "Execution" state. If no abnormal data is detected, the score calculation will proceed directly. Otherwise, it will enter the "Waiting for Review" state. After manual decision-making, manual confirmation and recalculation or manual confirmation of approval will be triggered. If the operations staff actively triggers the recalculation, the task will also re-enter the "Execution" state. After all processes are completed, the task will finally enter the "Completed" state and end the current calculation task.
[0060] Step S5 above completes the recalculation and version management after data changes, such as... Figure 5 As shown, the process is as follows: starting with the triggering of a data correction event, it first determines whether it affects existing tasks; if it does, the system automatically identifies the affected tasks and downstream dependencies, starts the intelligent recalculation engine to perform incremental calculation and concurrent processing, and generates a new data version snapshot after completion; if data needs to be rolled back later, it can directly switch to the specified historical version to ensure the traceability and recoverability of data changes.
[0061] Taking the points calculation task for Event A and Event B as an example, such as Figure 6As shown in (a), when the operator imports data for Event A and creates a calculation task, the system automatically generates a "Event A - Points Calculation" task node. Similarly, when importing data for Event B and creating a calculation task, the system automatically generates a "Event B - Points Calculation" task node. Both task nodes are associated with the "Annual Points Summary" calculation task node, and the system automatically establishes their dependencies, forming a corresponding task dependency graph. Based on this, the intelligent recalculation process is initiated as follows: The operator corrects the original score of a participant in Event A on the system interface and clicks "Confirm Correction"; after the system detects the event that "the original data of Event A has been changed," it immediately initiates impact analysis, finds the node "Event A - Points Calculation" related to "Event A" in the task dependency graph, and performs downstream traversal based on the dependency to determine the "Annual Points Summary" task. At this time, the system does not blindly recalculate all tasks, but constructs a minimum recalculation plan, marking "Event A - Points Calculation" and "Annual Points Summary" as dirty tasks, as shown below. Figure 6 As shown in (b), the recalculation plan is executed automatically: Recalculate the "Event A - Points Calculation" task: Only for the participants whose data has been corrected, the points calculation rules are rerun and their single-match points are updated, while the points of other participants remain unchanged; Recalculate the "Annual Points Summary" task: Only the year-end points of the participant are recalculated (based on their new points in Event A and old points in Event B, using the corresponding calculation rules), and then the final ranking is updated, while the year-end points of other participants remain unchanged.
[0062] Preferably, before recalculation, the system automatically creates a version snapshot V1.0 for the current points data. After the recalculation is completed, the system generates a new version snapshot V1.1 and records the following in the log: "V1.1: Corrected the score of participant [X] in event A". If a problem is detected in the recalculation in the future, the operator can roll back the data to the V1.0 state with one click.
[0063] As one implementation method, the annual points update process is as follows: Import the results of several marathon events throughout the year; the system automatically performs integrated anomaly detection, discovers and marks abnormal records; after online review by operations personnel, the records are confirmed and corrected; create a points calculation task; the system automatically constructs an annual calculation task dependency graph (DAG); the calculation engine concurrently executes the points calculation for each event and summarizes the year-end points; operations personnel confirm the calculation results; the system generates a data version snapshot of this calculation; after the data takes effect, update the athlete's points details, dynamic points, and rankings.
[0064] The above methods enable rapid calculation and synchronous updating of marathon race points, avoiding chaotic task execution, improving the process and standardization of race points management, and effectively solving problems such as low data processing efficiency, poor data accuracy, and rigid points management in existing technologies.
[0065] Those skilled in the art will understand that the modules or steps of the present invention described above can be implemented using general-purpose computer devices. Optionally, they can be implemented using computer-executable program code, thereby allowing them to be stored in a storage device for execution by a computer device, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. The present invention is not limited to any particular combination of hardware and software.
[0066] The above description is only a preferred embodiment of the present invention. Although the specific implementation of the present invention has been described in conjunction with the accompanying drawings, it is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that, based on the technical solution of the present invention, various modifications or variations that can be made by those skilled in the art without creative effort are still within the scope of protection of the present invention.
Claims
1. A task-oriented marathon race points management system, characterized in that, include: The data import module is used for batch importing structured marathon race data in multiple formats; The intelligent anomaly detection module is used to identify suspected abnormal data in the imported event data and supports manual review; The task creation module is used to create marathon event point calculation tasks and define the dependencies between tasks through data flow to build a task dependency graph. The points calculation module is used to perform points calculation tasks on the imported event data according to the preset points calculation rules. The concurrent recalculation and version management module is used to detect data changes, determine the tasks to be recalculated by combining the task dependency graph, perform incremental recalculation, and automatically create version snapshots for recalculated data. The data storage module is used to store the integral calculation results of all version snapshots using a multi-database collaborative architecture; The user interaction module provides a visual operation and query interface to display the score calculation results.
2. The task-oriented marathon race points management system as described in claim 1, characterized in that, In the data import module, data preprocessing is automatically performed during the import process. Data preprocessing includes format validation of race completion time, completion of missing fields, and deduplication of duplicate data in the athlete-race combination.
3. The task-oriented marathon race points management system as described in claim 1, characterized in that, The intelligent anomaly detection module includes a rule engine layer, a statistical model layer, a machine learning model layer, and a manual review interface arranged sequentially. The rule engine layer filters out abnormal data based on preset hard rules; The statistical model layer uses Z-score or IQR algorithms to identify statistical outliers; The machine learning model layer uses the isolated forest algorithm and the LSTM-based autoencoder model to perform deep anomaly detection on the data and identify suspected abnormal data. The manual composite interface automatically aggregates all suspected abnormal data and detection evidence, providing a unified review interface and supporting manual verification.
4. The task-oriented marathon race points management system as described in claim 3, characterized in that, The marathon event data includes: event identification information, athlete identification information, athlete performance information, ranking and group information; The process for identifying suspected anomalies in marathon event data is as follows: Based on preset hard rules, abnormal data is quickly screened, including: determining whether each contestant's performance exceeds the limits of human physiology, retrieving each contestant's historical best performance and determining whether the difference from the historical best performance exceeds a preset threshold. If the preset hard rules are met, a group analysis is performed on the scores of all players in the same event, and Z-score or IQR algorithms are used to identify outliers at the statistical level. The scores of the players corresponding to the outliers are abnormal data. If no outliers are found, an ensemble learning approach is adopted, using the isolated forest algorithm to identify outlier samples from global features, and an LSTM-based autoencoder model is used to learn the contestant's historical performance sequence to detect outliers that deviate from the individual's normal fluctuation range. It automatically aggregates all suspected abnormal data and detection evidence, and generates a unified review interface for manual verification.
5. The task-oriented marathon race points management system as described in claim 1, characterized in that, The construction of the task dependency graph includes: Create marathon event point calculation tasks, including event-level tasks, annual summary tasks, and cross-year summary tasks; Based on the data flow direction between different tasks, a visual DAG task dependency graph is constructed to clarify the dependency relationship between different levels of computing tasks; among them, the competition-level task is the upstream task of the annual summary task, and the annual summary task is the upstream task of the cross-year summary task.
6. The task-oriented marathon race points management system as described in claim 1, characterized in that, The execution process of the integral calculation task is as follows: Obtain comprehensive environmental data of the event venue and historical scores of all participants in the event; the comprehensive environmental data includes: geographical location, weather data, and track type; Based on the preset scoring rules and the acquired data, the imported event data is scored to obtain the final score result; different events correspond to different scoring rules and calculation parameters.
7. The task-oriented marathon race points management system as described in claim 1, characterized in that, The concurrent recalculation and version management process is as follows: Check if the athlete performance information in the imported marathon event data has been changed; If a change occurs, identify the marathon event corresponding to the change in results, determine the task corresponding to the marathon event, retrieve the task dependency graph to determine all downstream tasks of the task, take all the determined tasks as the tasks to be recalculated, perform incremental recalculation based on the changed information, and update the score calculation results. Data version snapshots are automatically created before and after recalculation. These snapshots contain data change logs that record the changes, the operators, and the operation times. They also support backtracking to any historical version snapshot.
8. The task-oriented marathon race points management system as described in claim 1, characterized in that, The multi-database collaborative architecture includes a MySQL database, a Redis cache, an InfluxDB database, and MinIO OSS. The MySQL database is used to store competition business data, basic information of contestants, and detailed scores. The Redis cache is used to store real-time rankings and the current scores of frequently accessed contestants. The InfluxDB database is used to store time-series data of contestants' historical scores. MinIO OSS is used to persistently store imported original score files and version snapshot files.
9. A task-based marathon race points management method, characterized in that, The task-oriented marathon race points management system based on any one of claims 1-8 is implemented, including: Batch import of structured marathon race data in multiple formats; Based on a multi-level detection architecture, suspected abnormal data in the imported event data is identified, and accurate event data is obtained after manual review. Create an integral calculation task and construct a task dependency graph based on the data flow; The system automatically retrieves the corresponding points calculation rules, performs points calculation on the imported event data, and obtains the points calculation results. Real-time detection of whether imported event data has changed; if data has changed, the task to be recalculated is determined by combining the task dependency graph and incremental recalculation is performed, and a version snapshot is automatically created for the recalculated data. Store the final data and display the scores and rankings.
10. The task-based marathon race points management method as described in claim 9, characterized in that, The process for identifying suspected anomalies in marathon event data is as follows: Based on preset hard rules, abnormal data is quickly screened, including: determining whether each contestant's performance exceeds the limits of human physiology, retrieving each contestant's historical best performance and determining whether the difference from the historical best performance exceeds a preset threshold. If the preset hard rules are met, a group analysis is performed on the scores of all players in the same event, and Z-score or IQR algorithms are used to identify outliers at the statistical level. The scores of the players corresponding to the outliers are abnormal data. If no outliers are found, an ensemble learning approach is adopted, using the isolated forest algorithm to identify outlier samples from global features, and an LSTM-based autoencoder model is used to learn the contestant's historical performance sequence to detect outliers that deviate from the individual's normal fluctuation range. It automatically aggregates all suspected abnormal data and detection evidence, and generates a unified review interface for manual verification.