Robot competition automatic penalty method and device
Patent Information
- Application Number
- CN202611282370.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-21
- Publication Date
- 2026-10-09
AI Technical Summary
然而,摄像头系统受限于安装位置和视角覆盖范围,存在难以消除的视觉盲区,导致部分区域的事件无法被有效捕捉;人工观察员在高速对抗的比赛中易受主观经验影响,出现误判或漏判现象,且难以维持判罚标准的一致性;机器人上报信息则因通信链路延迟、传感器噪声或数据丢包而失真,无法提供及时可靠的决策依据
[0010]根据本说明书实施例的第七方面,提供了一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现上述机器人比赛自动判罚方法的步骤。
Smart Images

Figure CN122885592A_ABST
Abstract
Description
Technical Field
[0001] The embodiments in this specification relate to the field of robot control technology, and in particular to a method and apparatus for automatic judging in robot competitions. Background Technology
[0002] In multi-robot physical competitions, referee decisions heavily rely on video footage captured by external cameras, real-time monitoring by on-site human observers, and status information reported by the robots themselves to determine key events such as goals, out-of-bounds errors, robot falls, illegal positioning, and ball contact. However, camera systems, limited by installation location and field of view, have blind spots that are difficult to eliminate, resulting in events in some areas not being effectively captured. Human observers are easily influenced by subjective experience in high-speed competitions, leading to misjudgments or omissions, and it is difficult to maintain consistency in judgment standards. Information reported by robots is distorted due to communication link delays, sensor noise, or data loss, failing to provide timely and reliable decision-making basis. Furthermore, the fast pace of competition requires referees to identify and judge complex events in a very short time. Existing methods lack a direct and authoritative data collection mechanism for the competition environment, making judgments susceptible to external interference, leading to competition disputes and process interruptions. For example, when judging whether a robot has completely crossed the boundary line or whether the ball has effectively entered the goal, due to the incompleteness and subjectivity of the data source, referees may make decisions that do not conform to reality, seriously damaging the fairness and entertainment value of the competition. Therefore, an effective solution is urgently needed to address the above problems. Summary of the Invention
[0003] In view of this, embodiments of this specification provide an automatic judging method for robot competitions. One or more embodiments of this specification also relate to an automatic judging device for robot competitions, a computing device, a computer-readable storage medium, and a computer program product, to address the technical deficiencies existing in the prior art.
[0004] According to a first aspect of the embodiments of this specification, an automatic judging method for robot competitions is provided, comprising: Collect world state data of the target referee during robot competitions; Based on the historical referee world state data and the target referee world state data corresponding to the robot competition, construct the temporal state sequence corresponding to the target robot and the target object participating in the robot competition respectively; The time-series state sequence is detected according to the preset rule set of the robot competition, and the judge structured data is generated based on the detection results; Based on the referee's structured data, the corresponding penalty control instructions for the target robot are constructed, and the target robot is driven based on the penalty control instructions.
[0005] According to a second aspect of the embodiments of this specification, another automatic judging method for robot competitions is provided, including: Obtain the target referee's world state data from the dynamic data of the physical process during the simulated robot competition; Based on the historical referee world state data and the target referee world state data corresponding to the simulated robot competition, a temporal state sequence corresponding to the simulated robot and the simulated object participating in the simulated robot competition is constructed respectively. The temporal state sequence is detected according to the set of rules preset for the simulated robot competition, and the judge's structured data is generated based on the detection results. Based on the referee's structured data, the corresponding penalty control instructions for the simulation robot are constructed, and the state of the simulation robot is updated based on the penalty control instructions.
[0006] According to a third aspect of the embodiments of this specification, an automatic judging device for robot competitions is provided, comprising: The data acquisition module is configured to collect world state data of the target referee during the robot competition. The construction module is configured to construct, based on the historical referee world state data and the target referee world state data corresponding to the robot competition, the temporal state sequence corresponding to the target robot and the target object participating in the robot competition. The detection module is configured to detect the time-series state sequence according to the preset rule set of the robot competition, and generate judge structured data based on the detection results; The driving module is configured to construct the penalty control instructions corresponding to the target robot based on the referee's structured data, and drive the target robot based on the penalty control instructions.
[0007] According to a fourth aspect of the embodiments of this specification, another automatic judging device for robot competitions is provided, comprising: The data acquisition module is configured to acquire target referee world state data during the simulated robot competition from the dynamic data of the physical process; The sequence construction module is configured to construct temporal state sequences corresponding to the simulated robots and simulated objects participating in the simulated robot competition based on the historical referee world state data and the target referee world state data corresponding to the simulated robot competition. The detection sequence module is configured to detect the temporal state sequence according to the preset rule set of the simulation robot competition, and generate judge structured data based on the detection results; The status update module is configured to construct the penalty control instructions corresponding to the simulation robot based on the referee's structured data, and update the status of the simulation robot based on the penalty control instructions.
[0008] According to a fifth aspect of the embodiments of this specification, a computing device is provided, comprising: Memory and processor; The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions. When the computer-executable instructions are executed by the processor, the steps of the above-described automatic judging method for robot competitions are implemented.
[0009] According to a sixth aspect of the embodiments of this specification, a computer-readable storage medium is provided that stores computer-executable instructions, which, when executed by a processor, implement the steps of the above-described automatic judging method for robot competitions.
[0010] According to a seventh aspect of the embodiments of this specification, a computer program product is provided, including a computer program or instructions that, when executed by a processor, implement the steps of the above-described automatic judging method for robot competitions.
[0011] The automatic judging method for robot competitions provided in this embodiment can collect target referee world state data during the robot competition; construct temporal state sequences corresponding to the target robot and target object participating in the robot competition based on the historical referee world state data and the target referee world state data corresponding to the robot competition; detect the temporal state sequences according to the preset rule set of the robot competition, and generate referee structured data based on the detection results; construct the judging control instructions corresponding to the target robot based on the referee structured data, and drive the target robot based on the judging control instructions. This method achieves closed-loop control by automatically collecting referee world state data, constructing temporal state sequences, detecting and generating structured data based on the rule set, and realizing closed-loop control. It effectively solves the problems of blind spots, misjudgments, and delays caused by referee judgments relying on external data, and has the advantages of improving the objectivity, real-time performance, and accuracy of judgments, while reducing dependence on external data. Attached Figure Description
[0012] Figure 1 This is a flowchart of an automatic judging method for robot competitions provided in one embodiment of this specification; Figure 2 This is a schematic diagram of rule detection in an automatic judging method for robot competitions provided in one embodiment of this specification; Figure 3 This is a flowchart of another automatic judging method for robot competitions provided in one embodiment of this specification; Figure 4This is a flowchart illustrating the processing procedure of an automatic judging method for robot competitions provided in one embodiment of this specification. Figure 5 This is a schematic diagram of the structure of an automatic judging device for robot competitions provided in one embodiment of this specification; Figure 6 This is a schematic diagram of another automatic judging device for robot competitions provided in one embodiment of this specification; Figure 7 This is a structural block diagram of a computing device provided in one embodiment of this specification. Detailed Implementation
[0013] Many specific details are set forth in the following description to provide a full understanding of this specification. However, this specification can be implemented in many other ways than those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this specification. Therefore, this specification is not limited to the specific implementations disclosed below.
[0014] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of this specification. The singular forms “a,” “described,” and “the” as used in one or more embodiments of this specification and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in one or more embodiments of this specification refers to and includes any or all possible combinations of one or more associated listed items.
[0015] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this specification, and similarly, second may also be referred to as first. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."
[0016] Furthermore, it should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in one or more embodiments of this specification are all information and data authorized by the user or fully authorized by all parties. Moreover, the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0017] This specification provides an automatic judging method for robot competitions. It also relates to an automatic judging device for robot competitions, a computing device, a computer-readable storage medium, and a computer program product, which are described in detail in the following embodiments.
[0018] See Figure 1 , Figure 1 A flowchart of an automatic judging method for robot competitions according to an embodiment of this specification is shown, which specifically includes the following steps.
[0019] Step S102: Collect the target referee's world state data during the robot competition.
[0020] Step S104: Based on the historical referee world state data and the target referee world state data corresponding to the robot competition, construct the temporal state sequence corresponding to the target robot and the target object participating in the robot competition.
[0021] Step S106: Detect the temporal state sequence according to the preset rule set of the robot competition, and generate judge structured data based on the detection results.
[0022] Step S108: Construct the penalty control command corresponding to the target robot based on the referee's structured data, and drive the target robot based on the penalty control command.
[0023] The automatic judging method for robot competitions provided in this embodiment can be applied to any robot competition scenario, such as robot soccer, robot basketball, robot running, and robot boxing. It is used to automatically and accurately detect fouls of each robot and automatically perform reward and punishment operations based on the detection results, thereby achieving stable maintenance of the competition without relying on referees and improving the automation effect of robot competitions.
[0024] Specifically, robot competitions refer to competitive activities involving one or more robots, such as robot soccer, robot fighting, or robot obstacle courses. During the competition, robots execute actions according to preset programs or real-time instructions and interact with other robots or objects in the competition area. Target referee world state data refers to the physical state information describing the competition area, robots, and other competition objects at a specific moment during the robot competition. This data may include, but is not limited to, position, speed, posture, and contact status, and is the direct basis for judging the competition. Historical referee world state data refers to the referee world state data that has occurred and been recorded during the robot competition up to the current moment. Combining this data with the target referee world state data can form a time series for analyzing the progress of the competition and the evolution of events. The target robot refers to the specific robot in the robot competition that serves as the object or basis for judgment. Its behavior and state are the focus of the judgment logic.
[0025] Correspondingly, the target object refers to other entities in a robotics competition besides the robot itself, such as the competition ball, obstacles, and scoring areas. The behavior and state of the target object are also crucial components of the judgment logic. A temporal state sequence is a sequence of state data for the target robot and target object at different points in time, arranged chronologically. This sequence reflects the robot's and object's movement trajectory, interaction process, and state changes over a period of time, providing a foundation for time-based rule detection. A rule set refers to a pre-defined series of judgment rules for robotics competitions. These rules define permitted and prohibited behaviors in the competition, and how to judge them under specific conditions. The rule set is the core logic of the automatic judgment system. Referee structured data refers to judgment result data with a clear format and semantics generated after rule detection. This data can include information such as judgment type, judgment object, judgment time, and competition state updates, serving as direct input for constructing judgment control instructions. Judgment control instructions are control commands generated based on the referee structured data and sent to the target robot or the competition environment. These instructions aim to correct violations, adjust the competition state, or reset the competition scenario to ensure the fairness and continuity of the competition.
[0026] Based on this, the first step is to collect target referee world state data during the robot competition. In one implementation, multiple sensors, such as optical sensors or inertial measurement units, can be deployed in the competition area to periodically acquire real-time position, velocity, and attitude information of all robots and objects in the competition area. This raw sensor data is then aggregated to form the target referee world state data for the current moment. In another implementation, each robot in the competition can autonomously report its own internal state data, such as its internal odometry data or touch sensor data. This reported data is then processed uniformly and considered as the target referee world state data.
[0027] Furthermore, based on the historical referee world state data and target referee world state data corresponding to the robot competition, a temporal state sequence corresponding to the target robot and target object participating in the robot competition is constructed. Specifically, the currently collected target referee world state data can be directly appended to the existing historical data records to form a continuously growing data list. Each data item in this list contains a timestamp, thus implicitly constructing the temporal state of the robot and object. For example, for a robot soccer competition, the coordinates of each robot, the coordinates of the ball, and their velocity vectors can be continuously recorded, and these data can be simply stacked in chronological order to form their respective motion trajectory data streams.
[0028] Subsequently, the temporal state sequence is detected according to the pre-defined rule set for the robot competition, and structured referee data is generated based on the detection results. As one implementation method, a static list containing all competition rules can be predefined, such as "ball out of bounds rule" and "illegal touch rule." In each penalty cycle, the system iterates through the entire temporal state sequence and executes each rule in the rule set sequentially to determine if any violations have occurred. For example, it can check whether the ball's trajectory exceeded the field boundary at a certain point in time, or whether a robot stayed in a specific area for a longer period than permitted. Once a violation is detected, the system generates an original penalty record containing the violation type, the involved parties, and the time of occurrence.
[0029] Finally, the system constructs corresponding penalty control instructions for the target robot based on the referee's structured data, and drives the target robot based on these instructions. Specifically, the generated referee structured data can be directly mapped to preset simple control commands. For example, if the referee structured data indicates "Robot A illegally touched," the system can generate a command to "Robot A stop moving." This command is then sent to Robot A's control module, causing it to immediately stop its current action. In another example, if the referee structured data indicates "ball out of bounds," a command to "reset the ball to the specified position" can be generated and executed by the game environment's physics engine to adjust the ball's physical position.
[0030] For example, suppose there's a robot soccer match scenario where two teams of robots are engaged in a fierce competition. One robot, named "Robot A," accidentally kicks the soccer ball out of bounds during a dribbling breakthrough. The system needs to automatically identify this violation and issue a penalty.
[0031] First, the system continuously collects target referee world state data during the robot competition. Specifically, multiple high-speed cameras deployed around the playing field capture the position, speed, and attitude information of Robot A, the opposing robot, and the soccer ball in real time. Simultaneously, the inertial measurement unit inside the soccer ball sends its motion data to the central processing unit. This data from different sources is aggregated at each time step to form "target referee world state data," describing the physical state of the game at the current moment. For example, in the few moments before and after the soccer ball goes out of bounds, the system obtains the precise coordinate sequence of the soccer ball at the edge of the playing field.
[0032] Next, based on the historical referee world state data and the target referee world state data corresponding to the robot competition, a temporal state sequence is constructed for Robot A and the soccer ball participating in the competition. The system maintains a historical record containing all referee world state data over a past period. When new target referee world state data is collected, it is appended to this historical record. Thus, a continuous "temporal state sequence" can be generated for Robot A and the soccer ball, which records in detail their precise movement trajectory and time points during the competition, especially when the soccer ball approaches and eventually crosses the boundary line. For example, the sequence will show the complete path of the soccer ball moving from inside the field to the boundary line and finally completely crossing the boundary line.
[0033] Subsequently, the system detects the temporal state sequence according to the preset rule set for robot competitions, and generates structured referee data based on the detection results. The system internally includes a set of rules encompassing various competition rules, such as the "ball out of bounds rule." The system continuously analyzes the temporal state sequences of Robot A and the soccer ball. When the system detects that the soccer ball's temporal state sequence indicates it has completely exceeded the boundary of the playing field at a certain point in time, and this out-of-bounds behavior was caused by Robot A's touch, the "ball out of bounds rule" is triggered. Based on this detection result, the system generates "referee structured data," which includes information such as "penalty type: ball out of bounds," "penalty object: soccer ball," "responsible party: Robot A," and "suggested action: inbound the ball from the designated location."
[0034] Finally, the system constructs the corresponding penalty control instructions for robot A based on the referee's structured data, and then drives robot A based on these instructions. Upon receiving the aforementioned structured referee data, the system immediately parses its content. Based on the information "Suggested action: Perform a throw-in at the designated location," the system constructs a "penalty control instruction." This instruction may include specific commands such as "Pause the game," "Reset the physical position of the football to the designated kick-off point," and "Robot A stops its current action and returns to the designated area." These penalty control instructions are then sent to the game's physics simulation engine and robot A's control system. As a result, the football is precisely moved to the kick-off point, robot A stops and adjusts its position, the game status is updated, and thus timely correction of violations and closed-loop control of the game's progress are achieved.
[0035] In summary, by automatically collecting referee world state data, constructing time-series state sequences, generating structured data based on rule sets, and achieving closed-loop control, the problem of blind spots, misjudgments, and delays caused by referees' reliance on external data is effectively solved. This approach has the advantages of improving the objectivity, real-time performance, and accuracy of judgments, while reducing dependence on external data.
[0036] In real-world competition scenarios, data from different sources often have different sampling frequencies. Direct processing of this data can easily lead to asynchronous updates, information redundancy, or missing key states, thus affecting the accuracy and real-time nature of the judgments. Therefore, in this embodiment, the collection of target referee world state data during the robot competition includes: Collect low-frequency and high-frequency referee world state data during the robot competition; add the low-frequency and high-frequency referee world state data to the referee sampling window; perform merging and deduplication processing on the referee world state data in the referee sampling window, and determine the target referee world state data based on the processing results.
[0037] Specifically, the project collects low-frequency and high-frequency referee world state data during robot competitions to obtain referee-related state information at different time granularities from the robot competition environment. Low-frequency data typically reflects the macroscopic, stable state of the competition, with a low update frequency but wide coverage; high-frequency data captures instantaneous, dynamic key events in the competition, with a high update frequency and providing fine action details. This data collection process can periodically capture global images or point cloud data of the competition venue at a low frame rate using sensor arrays deployed on the competition field, and obtain low-frequency referee world state data through image processing or data parsing; simultaneously, high-frequency referee world state data is obtained by real-time monitoring of the robot's interaction with the environment at a higher frame rate using the robot's own sensors or high-speed cameras. Alternatively, the global state information of the competition can be periodically pushed by the competition management system or referee server as low-frequency data; while high-frequency data can be obtained by subscribing to the robot's real-time telemetry data stream, capturing its instantaneous position, velocity, attitude, contact events, etc., in physical simulations or actual competitions.
[0038] Accordingly, the low-frequency and high-frequency referee world state data are added to the referee sampling window to provide a unified temporary storage area with time-series boundaries for data of different frequencies, facilitating subsequent integration and processing. This referee sampling window can be understood as a time window or data buffer capable of accommodating all low-frequency and high-frequency referee world state data collected within a specific time period. This can be achieved by maintaining a fixed-size circular buffer or queue as the referee sampling window. When new data arrives, it is inserted into the appropriate position within the window based on its timestamp, and older data exceeding the window's time range is removed. Alternatively, a dynamic data structure based on timestamps, such as an ordered list or hash table, can be defined as the referee sampling window to ensure that data is arranged chronologically within the window and allows for efficient lookup, insertion, and deletion operations.
[0039] Accordingly, the referee world state data in the referee sampling window undergoes merging and deduplication processing to address redundancy and inconsistency issues that may arise during the fusion of data from different frequencies, ensuring that the final generated target referee world state data is accurate, concise, and time-consistent. Merging processing aims to logically integrate data from different sources and frequencies that describe the same entity or event, forming a more comprehensive state description. Deduplication processing aims to eliminate data redundancy caused by high-frequency sampling or repeated reporting, avoiding duplicate penalties or calculation errors. This can be achieved by defining data merging rules; for example, for data describing the same robot position, high-frequency data can be prioritized to ensure real-time performance, or low-frequency data can be used to cover or supplement missing macroscopic information in high-frequency data during updates. For deduplication, duplicate data can be identified by comparing key identifiers of data items and deleted according to a preset strategy.
[0040] Correspondingly, determining the target referee world state data based on the processing results is the final output of the data processing workflow. The aim is to generate a cleaned, integrated, and optimized referee world state data set that can be directly used for subsequent judgment logic. This dataset is an authoritative description of the current match state, integrating real-time information from different frequencies and eliminating redundancy and inconsistencies. This is achieved by encapsulating all valid data items in the referee sampling window after merging and deduplication according to a predefined structured format, forming a single data packet or object containing all necessary referee semantic information.
[0041] Based on this, the system collects referee world state data at different frequencies in a layered manner, and integrates and optimizes it to provide high-quality data input for subsequent judgment processes. Specifically, the system simultaneously collects low-frequency and high-frequency referee world state data during robot competitions. This dual-frequency acquisition mechanism ensures comprehensive coverage of the competition state, reflecting both the overall situation and capturing subtle changes. Subsequently, this data of different frequencies is uniformly added to the referee sampling window. This window, acting as a buffer with time-bound boundaries, can aggregate all relevant referee world state data within a specific time period, laying the foundation for subsequent unified processing. On this basis, the data in the referee sampling window undergoes merging and deduplication processing. Merging aims to logically integrate data from different sources that describe the same entity or event, forming a more comprehensive state description, such as associating the robot's position information with contact information. Deduplication effectively eliminates redundant information caused by high-frequency sampling or data reporting mechanisms, avoiding duplicate calculations and potential judgment conflicts. Through the above merging and deduplication processing, an accurate, refined, and time-consistent target referee world state data can be determined based on the processing results. This optimized target referee world state data serves as a reliable foundation for subsequently constructing the temporal state sequences of the target robot and target object, greatly improving the accuracy and real-time performance of the judgment. It solves the problem in traditional methods where inconsistent data updates, redundant information, or missing key states affect judgment accuracy, providing a solid data guarantee for subsequent detection of the temporal state sequence according to a preset set of rules, enabling the entire automated judgment process to operate efficiently and accurately.
[0042] For example, in the physical simulation environment of a robot competition, referee snapshot data can be directly obtained from the dynamics data of the physics engine. This referee snapshot data can include simulation time, physical frame number, the position of each rigid body, rotation matrix, and detailed contact pair information. This raw physical data can be considered as high-frequency referee world state data. Simultaneously, the macroscopic state of the competition, such as the competition stage and score, can be generated at a lower frequency by the competition management module, serving as low-frequency referee world state data. These low-frequency and high-frequency data are then added to a referee sampling window, which can be a circular buffer used to store all referee world state data collected in the most recent period. Within the referee sampling window, the system can perform data merging and deduplication. For example, for high-frequency collected robot-object contact events (such as a ball), the root rigid body identifiers of the contacting robot can be checked and accumulated in each high-frequency physical step. When target referee world state data needs to be generated, the contact information at the current moment can be merged with the contact identifiers accumulated in the referee sampling window, and duplicate contact events can be removed to ensure that each contact event is recorded only once. Simultaneously, based on the preset referee semantic layout, the original rigid body positions, rotation matrices, and other data are transformed into a more referee-meaningful world state, such as the ball's position, the names of each activated robot, teams, player numbers, positions, attitude values, heading angles, and the set of robots in contact with the target object. This method ensures that the final target referee world state data is cleaned, integrated, and semantically clear, and is independent of the visual state used for 3D display, not dependent on the browser or rendering frame generation conditions.
[0043] In summary, the above processing effectively solves the problems caused by inconsistent frequencies of multi-source data, asynchronous data updates, information redundancy, or missing key states in automated judging of robot competitions. Layered collection of low-frequency and high-frequency referee world state data ensures a stable grasp of the overall competition state and real-time capture of key instantaneous events. The introduction of a referee sampling window provides a unified temporal benchmark for integrating data of different frequencies, effectively solving the problem of asynchronous data updates. Furthermore, merging and deduplication of data within the window not only eliminates redundant information and improves data processing efficiency but also ensures that the final generated target referee world state data is complete, accurate, and consistent. This provides a high-quality data foundation for subsequently constructing accurate temporal state sequences and reliable judgment detection based on a preset set of rules, thereby significantly improving the accuracy and real-time performance of automated judging in robot competitions and avoiding misjudgments or omissions caused by data quality issues.
[0044] In actual competition scenarios, due to the complex and dynamically changing distribution of objects such as robots and balls in the competition space, it is difficult to accurately identify the semantic attributes and spatial relationships of each object solely through raw data collection, thus limiting the accuracy of subsequent judgments. Therefore, in this embodiment, before the step of collecting the target referee's world state data during the robot competition, the following steps are also included: The competition layout data corresponding to the robot competition is determined, wherein the competition layout data includes at least one of robot data, object data, and mapping data; wherein the collection of target referee world state data during the robot competition includes: collecting referee snapshot data during the robot competition, and determining the target referee world state data based on the referee snapshot data and the competition layout data.
[0045] Specifically, before collecting the target referee's world state data, the competition layout data corresponding to the robot competition is first determined. This competition layout data is predefined and describes the attributes, identities, and logical relationships of various entities (such as robots, balls, obstacles, etc.) in the competition environment within the competition space. This competition layout data can include at least one of robot data, object data, and mapping data. Robot data can be used to identify the unique identity of each robot in the competition, its team affiliation, player number, etc.; object data can be used to describe the attributes and types of other key entities in the competition besides robots (such as balls, scoring areas, obstacles, etc.); and mapping data can establish the association between physical entities and logical entities, for example, mapping a physical rigid body to a specific robot or ball. In practice, the competition layout data can be determined manually by configuring and loading it through a configuration file or graphical interface before the competition begins, or automatically by parsing metadata in the model file and extracting and generating it when the system loads the competition scene model.
[0046] Subsequently, when collecting the target referee world state data during the robot competition, specifically, referee snapshot data is collected during the robot competition. Referee snapshot data refers to the raw, unprocessed instantaneous state data acquired by the system periodically or triggered by specific events during the robot competition, such as the instantaneous position, attitude, velocity, and contact information of each rigid body. This data can be obtained by interacting with the underlying interface of the physics simulation engine or the actual robot system, directly reading all relevant dynamic data within the current simulation frame or physics cycle, or by capturing the competition scene in real time through a high-speed sensor array and performing preliminary processing.
[0047] After acquiring the referee snapshot data, the target referee world state data is determined based on the referee snapshot data and pre-determined match layout data. This step is the core of the transformation from raw physical data to semantic referee world state. It uses pre-determined match layout data as parsing rules to interpret and transform the real-time acquired referee snapshot data. Through this combination, the system can identify which physical entities in the snapshot data correspond to which robot or which object, and extract semantic information meaningful for the judgment. For example, the physical states (position, rotation matrix, contact pairs, etc.) of all rigid bodies can be obtained from the referee snapshot data first, and then the mapping relationships in the match layout data can be used to match these physical rigid body states with predefined robot and object data, thereby transforming the raw physical data into referee world state data with clear semantics.
[0048] Based on this, by introducing competition layout data as a pre-judgment reference, a precise mapping from raw data to semantic state is achieved. Before collecting referee world state data, competition layout data containing robot data, object data, and mapping data is pre-determined. The core significance of this step is to establish a standardized spatial and object reference system for subsequent judgments. By combining the collected referee snapshot data with the competition layout data, the problem of the lack of semantic association in the raw data can be effectively solved, enabling the system to clearly identify the identity of each robot in the current competition, the attributes of objects, and their mapping relationships in the competition space. This method of parsing snapshot data based on layout data ensures that the target referee world state data not only contains physical location information but also has clear semantic labels, thus providing high-quality input for subsequently constructing accurate temporal state sequences and significantly improving the judgment logic's ability to understand complex situations in the competition. Specifically, after the robot competition starts or the physical model is loaded, the system first determines and caches the referee semantic layout, which includes the rigid body of the competition target object, the root rigid body of each robot, robot identity, team, team member number, the mapping from geometry to rigid body, and the mapping from rigid body to root rigid body. This layout remains unchanged throughout the lifecycle of the same model. Subsequently, during the competition, the system periodically collects referee-specific physical snapshots, such as obtaining simulation time, frame number, rigid body position, rigid body rotation matrix, and contact pairs directly from the dynamics data during the physics process. These raw snapshot data are then parsed and transformed according to a pre-determined referee semantic layout to generate a referee-specific world state. This referee-specific world state is separate from the visual state used for 3D display, and its generation does not depend on whether the browser subscribes to the display screen, ensuring the independence and authority of the rulings. In this way, the system can accurately transform raw physical data into referee world state data with clear semantics, providing a solid foundation for subsequent ruling logic.
[0049] For example, in a robot soccer simulation environment, when the system loads the game scene model, it first parses the model file and generates game layout data according to preset rules. This layout data might include: robot data, specifying the unique ID of each simulated robot (e.g., "Robot A", "Robot B"), its root rigid body ID in the physics engine, its team (e.g., "Red Team", "Blue Team"), and player numbers; object data, specifying the physical rigid body ID of the ball and the boundary coordinates of the goal area; and mapping data, establishing the correspondence between physical rigid body IDs and logical robots or balls. This layout data is cached and remains unchanged throughout the game. During the game, the simulation engine generates physical snapshot data at a fixed frequency (e.g., 1000 frames per second). This snapshot data is directly obtained from the dynamics data of the physics engine, including the instantaneous position, attitude (rotation matrix), velocity of each rigid body, and contact pair information between all rigid bodies. For example, the snapshot data might include "Rigid body ID_X is located at coordinates (x,y,z), rotation matrix R, and is in contact with rigid body ID_Y." Subsequently, the system uses the previously determined match layout data to parse these referee snapshot data. For example, if the layout data specifies "rigid body ID_X" as "robot A," then the system will interpret the position and orientation information of "rigid body ID_X" as "robot A's position and orientation." If the layout data specifies "rigid body ID_ball" as "ball," and the snapshot data shows that "rigid body ID_ball" is in contact with the boundary rigid body of the goal area, the system can determine the semantic event "the ball enters the goal." In this way, the raw, low-level physical snapshot data is converted into target referee world state data with clear semantics, such as "robot A is located at (x,y,z), with a normal orientation, a heading angle of θ, and is in contact with the ball," or "the ball is inside the goal." This semantically interpreted world state data is then used to construct a temporal state sequence for subsequent rule detection and judgment.
[0050] In summary, the above processing effectively solves the problems of lack of semantic association in raw data and difficulty in accurately identifying the state of the competition objects in traditional methods. By introducing competition layout data as a preliminary reference before collecting target referee world state data, and combining it with referee snapshot data for analysis, low-level physical data can be transformed into referee world state data with clear semantics. This not only ensures the accuracy and authority of the ruling basis and avoids misjudgments caused by misunderstandings of the raw data, but also provides reliable input for the subsequent construction of high-quality time-series state sequences, significantly improving the entire automatic ruling system's ability to understand complex situations on the competition field and the accuracy of its rulings.
[0051] Furthermore, in actual robot competition scenarios, fluctuations in the operating state of the simulation or physical environment make it difficult to maintain strict consistency between competition timing and physical motion processes. Moreover, the lack of a mechanism to precisely align the current judgment cycle with historical states makes it impossible to accurately reflect the evolution of the target robot and target object at specific points in time when constructing a temporal state sequence, thus affecting the accuracy of judgments and the coherence of temporal logic. Therefore, in this embodiment, after the step of collecting the target referee's world state data during the robot competition is executed, the following steps are also included: The process involves determining adjacent time information corresponding to the previous ruling cycle and, based on this adjacent time information, determining the target time information corresponding to the target referee's world state data in the current ruling cycle. Specifically, constructing temporal state sequences corresponding to the target robot and target object participating in the robot competition based on the historical referee world state data and the target referee world state data includes: determining initial temporal state sequences corresponding to the target robot and target object participating in the robot competition based on the historical referee world state data; constructing target temporal state data corresponding to the target robot and target object based on the target referee world state data; and adding the target temporal state data to the initial temporal state sequence according to the target time information to obtain the temporal state sequences corresponding to the target robot and target object.
[0052] Specifically, the adjacent time information corresponding to the previous penalty cycle refers to the time data recorded by the system before the start of the current penalty cycle, which is associated with the end point of the previous penalty cycle. Its function is to provide a time benchmark or reference point for the state data of the current penalty cycle, ensuring the continuity and accuracy of the time series. This information can be a timestamp, for example, recording the simulation time or physical time at the end of the previous penalty cycle; or it can be a time interval, for example, recording the start and end times of the previous penalty cycle. Target time information refers to the precise time point corresponding to the target referee's world state data within the current penalty cycle. This information is determined by combining the adjacent time information corresponding to the previous penalty cycle with the data acquisition or processing status within the current cycle, aiming to accurately map the currently acquired world state data onto the timeline of the match. Target time information can be an absolute timestamp, for example, directly obtained through the system clock or simulation clock; or it can be a relative time offset, for example, an increment relative to the end time of the previous penalty cycle. The initial temporal state sequence refers to a time series pre-established based on historical referee world state data, containing the state changes of the target robot and target object over a past period, before constructing the complete temporal state sequence. This sequence provides historical context for subsequently adding data for the current adjudication period, ensuring the integrity and coherence of the temporal data. The initial temporal state sequence can be a list or array storing state data for the past N time steps; it can also be a continuously updated historical state set maintained based on a sliding window mechanism. The target temporal state data refers to a data set reflecting the state of the target robot and target object at the current moment, constructed based on newly acquired target referee world state data within the current adjudication period. This data set is the latest state snapshot within the current adjudication period, used to update and expand existing temporal state sequences. The target temporal state data can be a structure containing information such as the robot's current position, attitude, and velocity; it can also be a record containing information such as the target object's (e.g., a ball) position and contact state. Adding target time-series state data to the initial time-series state sequence according to the target time information refers to inserting or appending the latest state data acquired within the current penalty period to the existing historical state sequence based on its corresponding timestamp, thereby forming a continuous and time-aligned complete time-series state sequence. This step ensures the real-time updating of the time-series sequence and the accuracy of the time dimension, providing a complete and accurate temporal context for subsequent rule detection. This addition operation can be achieved by appending new data to the end of the sequence; or by inserting data in an ordered manner according to timestamps within the sequence to maintain the temporal order of the sequence.
[0053] Based on this, after collecting the target referee world state data during the robot competition, the system first establishes a clear time reference for the data processing of the current judgment cycle by determining the adjacent time information corresponding to the previous judgment cycle. Based on this adjacent time information, the system can accurately calculate the target time information corresponding to the current target referee world state data on the entire competition timeline, thus solving the problem of inconsistency between competition timing and physical motion in traditional methods and ensuring the accuracy of time alignment. When constructing the temporal state sequences corresponding to the target robot and target object participating in the robot competition, this scheme first uses the historical referee world state data corresponding to the robot competition to generate the initial temporal state sequences of the target robot and target object, which provides the necessary historical context for subsequent state sequence construction. Subsequently, based on the currently collected target referee world state data, the target temporal state data corresponding to the target robot and target object at the current moment is constructed. The key is that this scheme precisely adds these target temporal state data to the initial temporal state sequence according to the previously determined target time information. This mechanism, which adds time-based information, ensures that the final sequence of robot and target object states not only includes the evolution of states but also precisely records the time of each state's occurrence, thus constructing time-series data with high temporal resolution and logical consistency. In this way, this solution effectively integrates discrete or asynchronously acquired world state data into a continuous, time-aligned, and logically rigorous time-series state sequence. This provides a reliable and accurate data foundation for subsequent detection of the time-series state sequence based on a preset set of rules, avoiding judgment errors caused by time deviations and significantly improving the accuracy and reliability of automatic judgment. For example, in basic judgment methods, a lack of precise time alignment may lead to errors in judging time-dependent rules such as "duration of being knocked down" or "duration of the person touching the ball." This solution, by introducing precise time information, enables these time-series rules to be judged based on a true and aligned timeline, thereby ensuring the fairness and effectiveness of the judgment.
[0054] For example, after collecting the target referee world state data during a robot competition, the system can first obtain the simulation timestamp at the end of the previous penalty cycle from the referee service as adjacent time information. For example, if the previous penalty cycle ended at simulation time 10.5 seconds, then 10.5 seconds is the adjacent time information. Next, the system can determine the target time information corresponding to the current penalty cycle based on the simulation timestamp contained in the current target referee world state data, or by calculating the difference with the adjacent time information. For example, if the current target referee world state data was collected at simulation time 10.6 seconds, then 10.6 seconds is the target time information. When constructing the temporal state sequence, the system can maintain a circular buffer or a dynamic list to store historical referee world state data of the target robot and target object over a past period. This data constitutes the initial temporal state sequence. For example, it can store data such as the robot's position, velocity, and attitude, as well as the ball's position and contact state, at a sampling point every 0.01 seconds within the past 5 seconds. Once new target referee world state data (e.g., the latest state of the robot and ball collected at simulation time 10.6 seconds) is constructed into target temporal state data, the system appends it to the end of the initial temporal state sequence according to its corresponding target time information (10.6 seconds). If the initial temporal state sequence has reached the preset maximum length, the oldest data point is removed to maintain the sequence length and real-time performance. In this way, the system can continuously update and maintain a temporal state sequence reflecting the state evolution of the target robot and target object at precise time points. For example, it can track robot motion windows, stable touch candidates, fall or inactivity timings, set-piece phases and the penalty taker's touch status, penalty kicks, return to the field and return grace periods, and ball stationary or game standstill states.
[0055] In summary, the above-described approach effectively addresses the issues of inconsistency between match timing and physical motion caused by fluctuations in the simulation or physical environment during automated judging in robot competitions, as well as the lack of a precise time alignment mechanism. By determining the adjacent time information corresponding to the previous judging cycle and the target time information for the current judging cycle, this solution ensures that the target referee's world state data can be accurately mapped onto the match's timeline, thereby constructing a precise and logically coherent temporal state sequence. This enables subsequent rule-based detection to accurately determine events dependent on the time sequence, such as the duration of a robot's fall, the ball's stationary time, or the duration of contact with the ball, significantly improving the accuracy and reliability of the judgments. Furthermore, this precise time alignment mechanism, combined with the basic data acquisition, construction, detection, and driving judgment processes, allows the entire automated judging system to make decisions based on a real and aligned time context, avoiding misjudgments or omissions caused by time deviations, thus improving the overall performance and fairness of the automated judging system for robot competitions. In robotics competitions, the competition state is dynamically changing. Using a fixed set of rules for full-scale testing not only wastes computational resources but also risks incorrect judgments due to rule mismatches. Furthermore, when multiple rules are simultaneously satisfied, a lack of clear execution logic and order can easily lead to conflicting judgments. Therefore, in this embodiment, the step of testing the temporal state sequence according to the preset rule set for the robotics competition and generating structured judge data based on the test results includes: The competition status information of the robot competition at the current moment is determined, and candidate rules matching the competition status information are selected from the preset rule base to form a preset rule set; the rules contained in the preset rule set are executed in the rule execution order to detect the target robot and the target object; and the judge structured data is generated based on the detection results corresponding to the target robot and the target object.
[0056] Specifically, determining the current state of a robot competition refers to identifying the specific stage or situation in which the robot is currently competing. This can be achieved in several ways. For example, the system can analyze real-time data on the competition field and robot status obtained from sensors (such as cameras, position sensors, and collision sensors) and combine this data with predefined competition stage definitions (such as start, halftime, pause, and after a goal). Alternatively, the system can receive signals from the competition control system or referee system that directly indicate the current competition state, such as the game timer, scoreboard status, or specific event triggers (such as fouls or going out of bounds).
[0057] Correspondingly, selecting candidate rules that match the match status information from a pre-defined rule base to form a pre-defined rule set refers to dynamically filtering relevant rules from a rule base containing all possible penalty rules based on the current match status. This rule base can be a database or configuration file containing all penalty rules, where each rule carries metadata indicating its applicable match status or stage. The system queries the rule base based on the currently determined match status information, filtering out all rules marked as matching the current status, thus forming a temporary rule set specific to the current match status. Alternatively, the system can employ decision tree or state machine-based logic to predefine rule groups to be activated under different match statuses. When the match status information is updated, the system directly loads or activates the specific rule set associated with that status.
[0058] Correspondingly, the rules in the preset rule set are executed according to the rule execution order to detect the target robot and target object. This means that after selecting the rule set, these rules are applied one by one in a predetermined order to check whether the behavior or state of the robot and object conforms to the regulations. This can be achieved by assigning a priority or sequence number to each rule in the rule set, and the system will strictly execute the rules one by one in this preset order. For example, rules affecting the flow of the game (such as scoring a goal or going out of bounds) can be executed first, followed by rules targeting robot behavior (such as committing a foul or falling to the ground). In addition, rules can be classified and grouped, for example, into "termination rules" and "non-termination rules". The system first executes the high-priority termination rules. If a termination rule is hit, the later mutually exclusive rules in the same stage are skipped to avoid conflicting penalties.
[0059] Accordingly, generating referee structured data based on the detection results for the target robot and the target object involves converting the output of rule execution into a unified and easily processed data format. After each rule is executed, if a violation or event is detected, a raw detection result is generated. The system parses and formats these raw results; for example, it converts "Robot A touches the ball out of bounds" into JSON or XML format data containing fields such as robot ID, event type (out of bounds), timestamp, and related object ID (ball). The system can predefine a template or pattern for referee structured data. When a rule detects a specific event, the corresponding fields in the template are populated, such as updating the game status (e.g., pause, restart), recording the penalty type (e.g., penalty time, warning), updating the score, and recording the event occurrence time.
[0060] Based on this, this application first collects the target referee's world state data during the robot competition, and then constructs the temporal state sequences corresponding to the target robot and the target object respectively based on historical and target referee world state data, providing a foundation for subsequent penalty detection. Furthermore, by determining the competition state information corresponding to the robot competition at the current moment, this application can accurately filter candidate rules highly relevant to the current scene from a large preset rule base. This state-driven rule selection method effectively avoids invalid calculations of irrelevant rules, ensuring the relevance of the penalty logic. Secondly, by setting a clear rule execution order, the application resolves the logical conflicts that may arise when multiple rules are triggered simultaneously within the same physical frame, ensuring the uniqueness and determinism of the penalty results. Finally, by comprehensively analyzing the detection results of the target robot and the target object, structured referee data can be generated. This structured processing method provides clear and accurate data support for the construction of subsequent penalty instructions. Through the above mechanism, the solution of this application can efficiently and accurately detect the temporal state sequence and generate reliable judge structured data, thus providing a solid foundation for the subsequent construction of penalty control instructions based on the judge structured data and driving the target robot, significantly improving the robustness and logical rigor of the automatic penalty system.
[0061] For example, in an embodiment of a robot soccer game, the system first continuously collects world state data of the target referee during the game and constructs a temporal state sequence of the robot and the soccer ball. When performing penalty detection, the system first determines the specific state of the current game, such as "game in progress," "set-piece phase," or "ball out of bounds." If the current state is "game in progress," the system selects a rule matching this state from the rule base, such as "ball touch state update rule" and "robot behavior rule." If the current state is "set-piece phase," it selects "set-piece interference rule" and "set-piece completion rule." After selecting the rule set, the system executes these rules according to a preset rule execution order. For example, in the "ball state rules," the execution order can be "ball jamming," "set-piece interference," "goal," "set-piece completion," "sideline out of bounds," "baseline out of bounds," and "global standstill." "Set-piece interference," "goal," and "out of bounds" can be defined as termination rules. This means that if a "goal" rule is triggered, subsequent mutually exclusive rules in the same phase, such as "set piece completed" and "sideline out of bounds," will not be executed, thus avoiding conflicts between simultaneous goal and out-of-bounds penalties. Based on the detection results of these rules, the system generates structured referee data. For example, if a goal is detected, structured data containing information such as "event_type: goal," "team_scored: TeamA," and "score_update: {TeamA: 1, TeamB: 0}" is generated. This structured data can further include modifying the game status, score, kick-off team, or set piece type; imposing penalties on robots and initiating penalty time; generating game events and statistics; requesting the movement of target objects; requesting the reset, removal, or repositioning of robots; and requesting the temporary shutdown or restoration of target object collision effects.
[0062] In summary, the above processing enables the intelligent selection and execution of penalty rules based on the dynamic changes in robot competitions, effectively avoiding erroneous penalties caused by rule mismatches or conflicts, and significantly improving the accuracy and efficiency of penalties. Simultaneously, by generating structured referee data, clear and reliable evidence is provided for subsequent penalty control instructions, making the entire automatic penalty system more stable and reliable. This solves the problems of wasted computational resources, inaccurate penalty results, and conflicts inherent in traditional fixed-rule penalty systems.
[0063] In specific implementation, the rules contained in the preset rule set are executed according to the rule execution order. This is used for detecting the target robot and the target object, such as... Figure 2The diagram illustrates how, based on the received referee world frames, the game timer and penalty time can be advanced to update the motion / ball touch / positioning ball trackers in real time. The robot can then execute rules sequentially, following the ball state rules. If a rule is hit, the next rule can be executed, and this process is repeated. When a rule is hit, it can be determined whether it is the final rule. If not, further testing continues, indicating that the hit rule does not affect the game, such as scoring or issuing yellow cards. When a rule is terminated, subsequent mutually exclusive rules can be skipped. The effects are summarized and the penalty is executed through the physical gateway. Finally, the status and event are published.
[0064] Furthermore, for rules requiring determination of robot movement, position and heading angle samples can be recorded within a sliding window of length T. The sum of two-dimensional distances between adjacent positions is calculated as the cumulative position path, and the sum of the absolute values of adjacent heading differences after angle-around processing is calculated as the cumulative heading path. A path threshold is generated based on the product of the motion rate threshold and the window length. By using the cumulative path instead of simply comparing the beginning and end positions of the window, it is possible to identify situations where the robot moves first and then returns to its original position. Different rules can share the same motion window algorithm but can be configured with different window lengths and rate thresholds.
[0065] The lack of clear definitions for the specific content dimensions of referee world state data and referee structured data makes it difficult for the system to accurately extract key physical state features when processing complex match information. Furthermore, the generated rulings lack sufficient semantic support, failing to effectively guide the robot in subsequent action adjustments or match state updates. Therefore, in this embodiment, the target referee world state data includes at least one of the following: The target object's position data, the target robot's attribute data, the target robot's posture data, the target robot's heading angle data, and the target object's robot contact data are included. The referee's structured data includes at least one of the following: the robot competition's competition status update data, the target robot's penalty time data, the robot competition's competition event data, the target object's control data, and the target robot's pose adjustment data.
[0066] Specifically, the target object's location data describes its spatial coordinates within the competition area, including two-dimensional or three-dimensional coordinates such as (x, y) or (x, y, z), and their representation in a specific coordinate system. This data can be obtained in real-time through a visual recognition system combined with image processing algorithms, or directly acquired through sensors deployed within the venue (such as a UWB positioning system). The target robot's attribute data describes its inherent or dynamic attributes, including its unique identifier, team affiliation, role (e.g., goalkeeper, forward), current energy state, health status, and physical dimensions and mass. This data can be reported by the robot's internal sensors (e.g., battery level sensors, collision sensors) or preset and queried through the competition management system. The target robot's attitude data describes its attitude information in space, including its pitch angle, roll angle, yaw angle (Euler angles), or quaternion representation. This data can be acquired in real-time through the robot's internal inertial measurement unit (IMU) or obtained through an external vision system combined with attitude estimation algorithms. The heading angle data for the target robot describes its orientation information on the horizontal plane, typically referring to the angle between the robot's forward direction and a reference direction (e.g., the X-axis of the field). This data can be calculated using the fusion of gyroscope and magnetometer data in an IMU, or by identifying robot feature points and calculating its orientation using a vision system. The robot contact data for the target object describes whether contact exists between the target object and the robot, and details of the contact, including the time of contact, the contacting robot ID, the contacting target object ID, the location of the contact point, and the magnitude of the contact force. This data can be detected using tactile or collision sensors on the robot, or by calculating collision events using a physics simulation engine.
[0067] Correspondingly, regarding the structured data for referees, the game state update data for robot competitions describes changes in the overall state of the game, including score updates, game phases (e.g., first half, second half, extra time), game pauses / resumptions, changes in the kick-off team, and set-piece types (e.g., corner kicks, free kicks). This data can be used for state transitions through a preset game state machine to generate corresponding state update instructions. The penalty time data for the target robot describes the time information for penalties imposed on a specific target robot, including the start time of the penalty, the duration of the penalty, and the end time of the penalty. This data can be calculated and recorded by the timer module according to the penalty rules. The game event data for robot competitions describes specific events that occur during the game, including goals, out-of-bounds errors, foul types (e.g., falling, illegal positioning), substitutions, injuries, etc. This data can be triggered by the event detection module according to the rules and generate records with event types and related parameters. The control data for the target object describes control instructions for the target object (e.g., a ball), including moving the target object to a specified position, stopping the target object's movement, and changing the target object's speed. This data can be sent as control instructions through the physics engine interface to adjust the physical state of the target object. The pose adjustment data for the target robot describes the instructions for adjusting the robot's pose, which may include resetting the robot to a specified position, moving it out of the area, repositioning it, or adjusting its orientation. This data can be sent as pose setting instructions via the physics engine interface to forcibly change the robot's position and orientation.
[0068] Based on this, a standardized data interaction interface was constructed by specifying and subdividing the referee world state data and referee structured data, thereby improving the perception depth and execution accuracy of the automatic judgment system. The system first comprehensively collects target referee world state data, including the position data of the target object, the robot attribute data of the target robot, the posture data of the target robot, the heading angle data of the target robot, and the robot contact data of the target object. This multi-dimensional, high-precision physical truth data provides a detailed and reliable input foundation for subsequent rule detection. Based on this refined world state data, the system can more accurately construct the temporal state sequences corresponding to the target robots and target objects participating in the robot competition, enabling more precise and detailed rule judgments when detecting temporal state sequences according to a preset rule set. Once a rule violation or competition event is detected, the system generates referee structured data. This structured data is no longer a simple judgment result, but rather contains a specific and executable set of instructions, including competition state update data corresponding to the robot competition, judgment time data corresponding to the target robot, competition event data corresponding to the robot competition, control data corresponding to the target object, and pose adjustment data corresponding to the target robot. These instructions can be directly mapped to updates in the competition process or specific action instructions for the robot, thereby constructing the corresponding penalty control instructions for the target robot, and driving the target robot based on these penalty control instructions. In this way, the solution of this application effectively solves the problem of delayed or inaccurate feedback from the physical world after the penalty, ensuring the closed-loop control capability of the penalty chain, and making the entire automatic penalty process more accurate, efficient and reliable.
[0069] For example, in a robot soccer game, the system continuously collects world state data from the target referee. For instance, the vision system identifies the center coordinates of the soccer ball as (X_ball, Y_ball, Z_ball) and uses this as the target object's position data. Simultaneously, the robot's internal sensors report robot A's unique identifier R1, its blue team affiliation, and its current battery level of 80%, among other robot attribute data. Robot A's inertial measurement unit provides its pitch, roll, and yaw angles, as well as its heading angle. When the physics simulation engine detects that robot A makes contact with the soccer ball at time T1, it generates robot contact data corresponding to the target object. Assuming the rule detection module, based on this detailed world state data, determines that robot A committed a handball foul within the penalty area (e.g., by analyzing robot A's posture data and the soccer ball's contact data), the system generates structured referee data. This data may include: match status update data for the robot competition, indicating that the match status has been updated to "penalty kick" and the red team is kicking off; penalty time data for the target robot, indicating that robot A has been penalized with a penalty of 10 seconds; match event data for the robot competition, recording the event as "handball foul" and the offending robot as R1; control data for the target object, instructing the soccer ball to move to the penalty spot; and pose adjustment data for the target robot, instructing robot A to move to a designated position outside the penalty area. This structured data is then used to construct penalty control instructions. For example, a physics simulation engine can be used to move the soccer ball to the penalty spot and move robot A out of the penalty area, while simultaneously updating the match timer and scoreboard, thereby achieving automatic penalty decisions and timely adjustments to the physical world.
[0070] In summary, the above processing overcomes the problems of data ambiguity and lack of semantic support for judgment results in traditional solutions. Specifically, by collecting multi-dimensional physical ground truth data, such as position, attributes, posture, heading angle, and contact data, the system can perceive the competition state more accurately and comprehensively, providing high-precision and high-reliability input for rule detection. Simultaneously, by generating structured judgment data with clear semantics, such as competition state updates, judgment times, competition events, target object control, and pose adjustment data, judgment results can be directly converted into executable instructions, effectively guiding the robot to adjust subsequent actions or update the competition state. This enables the automatic judgment system to achieve closed-loop control from perception to execution, ensuring that judgment results are fed back to the physical world in a timely and accurate manner, avoiding duplicate judgments or judgment failures caused by untimely updates to the physical world state, and significantly improving the accuracy, real-time performance, and effectiveness of automatic judgment. In actual execution, because the judgment logic may continuously meet the triggering conditions in consecutive physical frames, the system repeatedly constructs and issues the same judgment control instructions within a very short period of time. This not only wastes computing resources but may also cause the robot's actions to jitter or become logically chaotic due to frequent instruction overriding or conflict. Therefore, in this embodiment, after the step of constructing the judgment control instructions corresponding to the target robot based on the judge's structured data is executed, the method further includes: An execution grace constraint is created based on the penalty control instruction. If the execution grace constraint is in effect, the repeated construction of the penalty control instruction is suppressed. If the penalty control instruction is in effect, the execution grace constraint is revoked.
[0071] Specifically, "creating execution grace constraints based on penalty control instructions" refers to setting a "protection period" or "cooling-off time" for generated penalty control instructions. During this period, the system will handle the repeated generation or execution of the instruction in a special way. The core of this constraint is to establish a state lock or buffer period, which clarifies whether the current penalty instruction is in a pending or executing state, thus logically forming a debouncing protection mechanism. Specifically, this can be achieved by maintaining a penalty instruction state table or a hash set internally. When a penalty control instruction is constructed, its unique identifier (e.g., a combination of instruction type, target robot ID, penalty reason, etc.) and a preset grace timestamp are recorded in the table. Alternatively, this can be achieved by setting a "reset barrier" or "protection window" in the physics engine or robot control module. When a penalty control instruction is issued, the barrier or window is activated, preventing the receiving or processing of the same type of penalty instruction within a certain period of time.
[0072] Correspondingly, "suppressing duplicate construction of penalty control instructions when grace period constraints are in effect" means that when grace period constraints are active, the system will not generate new penalty control instructions that are the same as or equivalent to the currently effective penalty control instructions. Its purpose is to prevent instruction redundancy and system overload caused by continuously satisfied penalty conditions. For example, before constructing a penalty control instruction, the system can first query the penalty instruction status table. If it finds that the instruction currently being constructed is the same as an instruction within the grace period in the table, the current construction operation is skipped, and no new instruction is generated. Alternatively, a filter can be set at the output of the penalty logic. When the penalty logic determines that a penalty control instruction needs to be generated, this filter checks whether an effective grace period constraint exists. If it exists and is related to the current penalty instruction, the generation request for that instruction will be intercepted or delayed.
[0073] Correspondingly, "revoking the execution grace constraint when the penalty control command is in effect" means releasing the suppression of repeated construction commands when the execution effect of the penalty control command has become apparent or its preset grace period has expired. This ensures that the system can promptly restore its real-time response capability to subsequent game states after completing the current penalty action. For example, this can be achieved through a timer mechanism. When an execution grace constraint is created, a timer with a length consistent with the grace period is started. When the timer expires, the corresponding grace constraint record is automatically removed from the penalty command status table. Alternatively, it can be achieved through the feedback mechanism of the physics engine or robot control module. When the physics engine confirms that the penalty control command (e.g., moving the ball, disqualifying the robot) has been successfully executed and reached the expected state, it sends a completion signal to the penalty system. Upon receiving this signal, the penalty system releases the corresponding grace constraint.
[0074] Based on this, by introducing an execution grace period constraint mechanism, refined management of the execution process of penalty control instructions is achieved, effectively solving the problems of system redundancy and execution instability caused by repeated triggering of penalty instructions. In the automatic penalty method for robot competitions, after the system constructs the penalty control instruction corresponding to the target robot based on the judge's structured data, in order to prevent the instruction from being repeatedly constructed and issued in a very short time, the system will immediately create an execution grace period constraint condition based on the penalty control instruction. This constraint condition essentially sets a "protection period" or "cooling-off time" for the current penalty instruction. During this period, the instruction is considered to be being processed or has been processed, thus forming a debouncing protection mechanism. Once the execution grace period constraint condition takes effect, the system will enter a suppression state. In this state, even if subsequent competition state data again meets the conditions for triggering the same penalty, the system will actively prevent the repeated construction of the same penalty control instruction. This suppression mechanism ensures the uniqueness and consistency of penalty instructions by blocking repeated calculations and instruction generation of the same penalty logic. This avoids instruction oscillations caused by high-frequency updates of physical frames, effectively saving computational resources and preventing the robot from jittering or becoming confused due to receiving duplicate instructions. When the effect of the penalty control instruction has become apparent, or its preset grace period has expired (i.e., the penalty control instruction has taken effect), the system will promptly revoke the execution grace constraint. This revocation operation ensures that the system can unlock itself promptly after completing the current penalty action, restoring its real-time responsiveness to subsequent game states. Through this dynamic creation and revocation mechanism, the penalty chain remains closed and dynamically updated, allowing the robot to perform subsequent penalty processing based on the latest game situation. This ensures both the rigor of the penalty logic and the flexibility and efficiency of the system response. Combined with the basic penalty process, this mechanism enables the penalty system to perform automatic penalties for robot competitions stably and efficiently, ensuring the accuracy of the penalties and the stability of the robot's behavior.
[0075] For example, suppose in a robot soccer match, when the ball goes out of bounds, the refereeing system needs to generate a "ball return" control command to move the ball to a designated position. First, after the refereeing system detects the ball is out of bounds and generates corresponding structured referee data based on collected target referee world state data, historical referee world state data, and a preset set of rules, it constructs a "ball return" control command based on this structured referee data. Next, the system creates an execution grace period constraint based on this "ball return" control command. This constraint can be a hash table entry maintained in system memory, containing a unique identifier for the control command (e.g., "BallOut_Reset") and a timestamp indicating that the constraint will automatically expire at a future point in time (e.g., after 500 milliseconds). Within the next 500 milliseconds, if the refereeing system detects the ball is still out of bounds again (e.g., due to physics engine latency or ball inertia) and attempts to construct the "ball return" control command again, the system will first query this hash table. Because the execution grace constraint of "BallOut_Reset" is still in effect, the system will suppress this repeated build operation and will not generate a new "ball return" instruction. This avoids sending multiple identical ball return instructions to the physics engine in a short period of time, thus preventing unnecessary jitter or positional conflicts during the ball's return process. Once the physics engine successfully executes the first issued "ball return" penalty control instruction and moves the ball to the designated position, the physics engine can send a feedback signal indicating that the instruction execution is complete to the penalty system. Upon receiving this feedback signal, the penalty system will immediately remove the execution grace constraint corresponding to "BallOut_Reset" in the hash table. At this point, even if the preset time of 500 milliseconds has not completely elapsed, the constraint will be prematurely released. In this way, the system can respond promptly to other possible penalty situations. For example, if the ball is kicked out of bounds by the robot immediately after returning to its position, the system can quickly generate a new penalty instruction.
[0076] In summary, the above approach effectively solves the problem of repeated construction and issuance of penalty control instructions during automatic judging in robot competitions due to the continuous fulfillment of triggering conditions in the penalty logic. This solution introduces execution grace constraints, setting an effective "protection period" for the execution of penalty control instructions, thereby suppressing the repeated generation of identical instructions during their effective period. This significantly reduces unnecessary computational resource consumption, avoids robot motion jitter and logical confusion caused by frequent instruction overriding or conflicts, and ensures the uniqueness and consistency of penalty instructions. Simultaneously, the timely removal of the grace constraints after the penalty control instructions take effect ensures the system can quickly recover its responsiveness to the latest competition status, maintaining the dynamism and flexibility of the penalty chain, making the automatic judging process in robot competitions more stable, efficient, and accurate.
[0077] Furthermore, the lack of effective data accumulation and structured management during the competition process prevents the systematic utilization of post-judgment data. This hinders subsequent performance optimization of the robot due to a lack of data support, making continuous iteration and improvement of competition strategies difficult. Therefore, in this embodiment, after the target robot steps are executed based on the judgment control command, the process further includes: Determine the robot control data corresponding to the target robot, as well as the event data and competition penalty data corresponding to the robot competition; construct the competition structured data corresponding to the robot competition based on the robot control data, the event data, and the competition penalty data; store the competition structured data in the target database, and use the competition structured data stored in the target database to optimize the target robot.
[0078] Specifically, the robot control data corresponding to the target robot refers to the set of instructions used to drive the target robot to perform specific actions or behaviors during the robot competition. This data records the specific control signals received by the robot, such as speed commands, posture commands, joint angle commands, or path planning commands. This data can be obtained in real time through the robot's internal controller log system, or by intercepting and parsing the transmitted control command data packets through monitoring the communication interface between the robot and the control system. The event data corresponding to the robot competition refers to the record of discrete events with specific significance that occur during the robot competition. These events may include the start, pause, end, goal, out-of-bounds, foul trigger, robot falling, robot contact with the target object, etc. This event data can be automatically generated through a preset event triggering mechanism of the referee system or competition management system. For example, when a sensor detects the ball entering the goal area, the system automatically records a "goal" event; it can also be automatically identified and recorded through human referee input or based on technologies such as visual recognition and sensor fusion. The competition penalty data refers to the penalty results and related information generated by the referee system after judging the robot's behavior according to the competition rules. This data includes the type of penalty (e.g., foul, out of bounds), the object of the penalty (which robot or object), the time of the penalty, the basis for the penalty (the triggering rule), and possible accompanying penalties (e.g., free throws, timeouts). This penalty data can be directly generated by an automated penalty system based on rule detection results, and includes detailed contextual information about the penalty; alternatively, it can be penalty information entered and recorded by a human referee through an interface after the penalty is applied.
[0079] Accordingly, constructing the structured data for the robot competition involves integrating, associating, and formatting the aforementioned robot control data, event data, and competition penalty data to form a data set. This is done to facilitate subsequent storage, querying, analysis, and utilization. Structured data means that the data has a predefined model and organization method, such as using JSON or XML formats or storing it in a relational database table. This process can involve designing a data model, defining the fields and data types included in the structured competition data, and then mapping the raw data to this model through a data processing module; alternatively, data integration tools or programming scripts can be used to clean, transform, and load (ETL) data from different sources, ultimately forming a unified structured data format. Storing the structured competition data in the target database refers to persistently storing the constructed structured competition data in a specific database system. Choosing an appropriate database type (such as a relational database, NoSQL database, or time-series database) is crucial for data storage efficiency, query performance, and scalability. This stored procedure can use relational databases (such as MySQL and PostgreSQL) to store structured data in predefined tables and query and manage it via SQL; or it can use NoSQL databases (such as MongoDB and Cassandra) to store data in the form of documents, key-value pairs, or column families, suitable for handling semi-structured or unstructured data and providing higher scalability. The structured competition data stored in the target database is used to optimize the target robot, which is the core purpose of the entire data loop. By analyzing the historical structured competition data stored in the target database, we can discover the robot's behavior patterns, reasons for penalties, and the effectiveness of control strategies in the competition, thereby providing a basis for improving the robot's algorithms, parameters, or hardware design. This optimization process can use machine learning algorithms to train on historical data, such as using reinforcement learning to optimize the robot's decision-making strategy so that it avoids fouls or takes better actions in similar situations; or it can use data mining and statistical analysis to identify common patterns or inefficient control commands that lead to penalties, and then manually adjust or automatically optimize the robot's behavioral logic.
[0080] Based on this, a closed-loop data capture and analysis process is initiated immediately after the target robot executes steps driven by penalty control commands, thus tightly integrating the penalty process with robot performance optimization. Specifically, after the penalty control commands drive the target robot to perform corresponding actions, the system synchronously identifies and collects the robot's control data during this period. This data accurately records the robot's actual execution commands. Simultaneously, the system also collects event data occurring during the robot's competition, such as key actions and state changes, as well as competition penalty data generated by the automatic penalty system. This data details the type, reason, and time of the penalty. Subsequently, this heterogeneous data is integrated and constructed into unified structured competition data, ensuring data integrity, consistency, and analyzability. The constructed structured competition data is stored in the target database, forming a data asset that can be accumulated and queried over the long term. It is this data accumulation that enables subsequent in-depth analysis and optimization of the target robot. By mining and learning from this historical competition data, patterns leading to penalties, inefficient control strategies, or potential improvement points can be identified, thereby guiding the target robot to adjust its behavioral algorithms, motion parameters, or decision-making logic. This mechanism enables the entire robot competition's automatic judging system not only to respond to and correct violations in real time, but more importantly, it can learn from each judgment and control action, continuously improving the target robot's competitive level and rule adaptability, thereby transforming a single judgment action into a data-driven force that drives robot evolution.
[0081] For example, in a robot soccer match, when the automatic refereeing system detects a "out-of-bounds" foul by the target robot according to the rules and generates a refereeing control command to drive the target robot back into the field, the solution in this application immediately starts data recording. At this time, the system determines the robot control data when the target robot performs the "return to the field" action, such as its motor drive commands and path planning parameters. Simultaneously, the system records the "out-of-bounds" event data and the match refereeing data for the "out-of-bounds penalty" generated by the refereeing system, which may include information such as the penalty time and the triggering rule ID. This data is then integrated into a JSON-formatted match structured data packet, containing fields such as "control_commands":{…}, "event_type": "out_of_bounds", "penalty_details": {"time": "t1", "rule_id": "R001"}. This structured data packet is stored in real-time in a time-series database and associated with the match ID, robot ID, etc. As multiple matches progress, a large amount of match structured data accumulates in the target database. For example, by analyzing this data, it can be found that the target robot is more prone to "out-of-bounds" penalties in specific areas or at specific speeds. Based on this analysis, reinforcement learning algorithms can be used to train the target robot's path planning module, enabling it to adopt a more conservative strategy when approaching the boundary, or to adjust its speed control parameters, thereby effectively reducing the occurrence of "out-of-bounds" violations and improving its performance in future competitions.
[0082] In summary, the above approach effectively addresses the disconnect between the judgment process and robot performance improvement in traditional automated judgment methods. By systematically collecting robot control data, competition event data, and competition judgment data after the target robot is driven by judgment control commands, and constructing them into structured competition data stored in the target database, the assetization of the entire competition data chain is achieved. This closed-loop data mechanism provides a solid data foundation for the continuous optimization of the target robot, enabling it to automatically adjust its behavioral strategies or motion parameters based on judgment experience and control performance in historical competitions, thereby demonstrating stronger adaptability and competitive level in future competitions. This not only improves the intelligence level of the automated judgment system, but more importantly, it endows the robot competition system with the ability to self-learn and evolve, significantly improving the robot's overall performance and competition efficiency.
[0083] In practical applications, in robot soccer matches, the physics engine can be set to run at 500 Hz, and the referee's world state can be published at a frequency not exceeding 200 Hz. Each physics step accumulates the contact between the soccer ball and the robot. After receiving the world state, the automatic referee advances the match using the simulation time within that world state. The match begins in the Ready state. If all undone robots remain stable for the preset time across consecutive world frames, the match enters the Set state early; otherwise, it enters the Set state after the preparation time expires. The Set state is maintained for the preset time before entering the Playing state. In the Playing state, the referee first updates the stable ball contact, then executes the robot position, fall, and movement rules, and finally executes the ball state rules. When the ball crosses the goal line and meets the goal conditions, the goal termination rule is triggered, and subsequent out-of-bounds rules are no longer executed; the system modifies the score, initiates a restart process, and places the ball at the designated position via the physics control gateway.
[0084] Simultaneously, set-piece interference can be prioritized over goals. Specifically, during a set-piece, the defending team touches the ball before the taker's first legal touch. The touch tracker records this consistent contact by the defending team. The rules pipeline first executes the "defender's set-piece interference" termination rule, then executes the goal rule. Therefore, even if the contact leads to the ball entering the goal, it will not be incorrectly recorded as a goal; instead, a penalty will be applied to the relevant robot, and the set-piece will be re-executed.
[0085] During the robot fall detection phase, the dot product of the robot's body-up axis and the world-up axis is calculated using the robot's rigid body rotation matrix. If this dot product is lower than a threshold, a fall candidate timer is initiated. If the timer remains below the threshold for an extended period and exceeds the fall time limit, a penalty effect of "incapacitated robot" is generated. If the robot recovers before the time limit, the candidate state is cleared.
[0086] Furthermore, the illegal re-entry and repeated penalty suppression features allow for automatic refereeing of a penalized robot entering the play area before the penalty time expires, resulting in an illegal re-entry effect and its removal from the play area via a physical gateway. Due to the delay between command issuance and the next physical frame, the effects manager establishes a short grace window for the robot. Within this window, even if the received world frame still shows the robot within the play area, the same penalty will not be issued again.
[0087] For paused and accelerated simulations, it can be configured so that when the simulation is paused, the simulation time of the world frame does not increase, and the match time, penalty time, and rule window are all frozen. When the simulation runs at twice the real-time speed, the match time is accelerated synchronously with the simulation time, while the communication heartbeat is still sent according to the wall clock. This ensures that the match semantics are consistent with the robot's actual movements.
[0088] See Figure 3 , Figure 3A flowchart of another automatic judging method for robot competitions according to an embodiment of this specification is shown, which specifically includes the following steps.
[0089] Step S302: Obtain the target referee world state data during the simulated robot competition from the dynamic data of the physical process.
[0090] Step S304: Based on the historical referee world state data and the target referee world state data corresponding to the simulated robot competition, construct the temporal state sequence corresponding to the simulated robot and the simulated object participating in the simulated robot competition.
[0091] Step S306: Detect the temporal state sequence according to the preset rule set of the simulated robot competition, and generate judge structured data based on the detection results.
[0092] Step S308: Construct the penalty control instructions corresponding to the simulation robot based on the referee's structured data, and update the state of the simulation robot based on the penalty control instructions.
[0093] In practical applications, traditional multi-robot competitions such as robot soccer suffer from the following problems when judging in a simulation environment: Inferring the game state from the browser display or rendered frames is affected by the display frame rate, subscription relationships, and network latency, and cannot serve as an authoritative basis for judgment; re-analyzing the semantics of the ball and robot from the generalized coordinates of the general physical state requires repeated understanding of the model layout and makes it difficult to obtain a stable ball-robot contact relationship; using the operating system's wall clock for timing results in inconsistencies between the game time and physical motion when the simulation is paused, running slowly, or accelerating; multiple rules lack a fixed execution order when satisfied in the same physical frame, potentially leading to conflicting results such as goals, out-of-bounds errors, and replays; and if only the score or state is modified after a judgment without altering the physical world, the ball and robot remain in the wrong position, causing repeated judgments to be triggered in the next frame.
[0094] To address this issue, this application proposes an automatic judging method for robot competitions. This method constructs a closed-loop automatic judging chain by directly embedding the judging logic onto the dynamic data of the physical simulation process. The target referee's world state data during the simulated robot competition is obtained from the dynamic data of the physical process, directly utilizing the underlying physical truth of the simulation engine, thus avoiding errors caused by inferring the state from the rendered screen. Specifically, the system periodically reads the precise position, velocity, and contact state of the robot and the object from the underlying interface of the physical simulation engine. These parameters serve as the direct source of the target referee's world state data, ensuring the authority and timeliness of the data acquisition. Since the dynamic data of the physical process is independent of the rendering module, it is unaffected by fluctuations in the display frame rate or network latency, fundamentally solving the problem of inaccurate state determination.
[0095] Furthermore, based on the historical referee world state data and target referee world state data corresponding to the simulated robot competition, a temporal state sequence corresponding to the simulated robot and simulated object participating in the competition is constructed. The system maintains a historical data cache with a sliding time window, appending newly acquired target referee world state data to the cache in timestamp order to form a continuous temporal state sequence. For example, for the ball in a soccer robot competition, this sequence records its coordinate change trajectory in consecutive physical frames, thus enabling precise analysis of the ball's movement from inside the field to the boundary line and finally out of bounds. In other words, by introducing a time dimension, the temporal state sequence allows the judgment logic to be analyzed based on the continuity of the motion trajectory rather than a single frame snapshot, effectively overcoming the difficulty of physical semantic parsing.
[0096] Based on this, the system detects the temporal state sequences according to the pre-defined rule set for the simulation robot competition, and generates structured referee data based on the detection results. The rule set is stored in the form of predefined condition-action pairs, such as "when the ball's temporal state sequence shows that it is outside the boundary line for three consecutive frames, trigger the ball out of bounds rule." The system uses a fixed-priority rule execution engine to traverse the rule set sequentially and check whether the temporal state sequence meets the trigger condition. Once a violation is detected, structured referee data containing the penalty type, responsible party, and handling suggestions is immediately generated. In detail, this process, through a structured rule processing mechanism, ensures the consistency of the execution order when multiple rules are executed concurrently, avoiding confusion in the penalty logic caused by rule conflicts.
[0097] Simultaneously, the system constructs corresponding penalty control instructions for the simulated robot based on the referee's structured data, and updates the simulated robot's state based on these instructions. The system maps processing suggestions from the referee's structured data into control instructions executable by the physics engine, such as "reset the ball's position to the serving point coordinates" or "pause robot movement for 500 milliseconds." These penalty control instructions directly affect the physics simulation engine, forcibly correcting the physical state of the offending object. Typically, in a ball-out-of-bounds scenario, the system not only generates a record of the out-of-bounds penalty but also simultaneously instructs the physics engine to reset the ball's coordinates to the specified position and controls the relevant robot to retreat to a safe area, thereby completely eliminating the violation and preventing repeated penalties in the next physical frame.
[0098] The following is a concrete example: In a robot soccer game, when robot A kicks the ball out of bounds, the system first obtains the precise coordinates of the ball in three consecutive frames from the dynamics data of the physical process, confirming that it has completely crossed the boundary line. Then, based on historical data, it constructs a temporal state sequence of the ball to verify the continuity of the out-of-bounds process. Next, it triggers the "ball out of bounds rule" through rule set detection, generating structured referee data containing robot A as the responsible party. Finally, it constructs a penalty control command, instructing the physics engine to reset the ball to the sideline kickoff point and pause robot A's movement until the game resumes. Through this technical solution, the basis for the penalty is migrated from the rendering layer to the physics layer, ensuring strict synchronization between game timing and physical movement, and establishing a real-time feedback mechanism for the penalty result to the physical world.
[0099] In summary, by deeply coupling the penalty logic with the dynamic data of the physical simulation process and constructing the temporal state sequence of the simulated robot and the simulated object, continuous state analysis and temporal rule detection based on physical truth values are achieved. This avoids uncertainties at the rendering level, resolves conflicts between multiple rules, and establishes closed-loop feedback control in the physical world. Compared with traditional solutions, this application eliminates state judgment errors by directly obtaining physical truth values, improves the accuracy of complex behavior recognition through temporal state sequence analysis, ensures the consistency of penalty logic through structured rule processing, and completely solves the problem of residual violation states through physical feedback control. Ultimately, it forms an automatic adjudication chain that does not rely on browsers and rendering frames and is based on physical simulation truth values.
[0100] It should be noted that the other automatic judging method for robot competitions provided in this embodiment belongs to the same inventive concept as the automatic judging method for robot competitions in the above embodiments. All contents not described in detail can be referred to the descriptions in the above embodiments, and will not be elaborated further in this embodiment.
[0101] The following is in conjunction with the appendix Figure 4 Taking the application of the automatic judging method for robot competitions provided in this specification in a boxing match scenario as an example, the automatic judging method for robot competitions will be further explained. Among other things, Figure 4 The present specification illustrates a flowchart of an automatic judging method for robot competitions according to an embodiment of this specification, which specifically includes the following steps.
[0102] Step S402: Collect low-frequency referee world state data and high-frequency referee world state data during the robot competition.
[0103] Step S404: Add the low-frequency referee world state data and the high-frequency referee world state data to the referee sampling window.
[0104] Step S406: Merge and deduplicate the referee world state data in the referee sampling window, and determine the target referee world state data based on the processing results.
[0105] Step S408: Based on the historical referee world state data and target referee world state data corresponding to the robot competition, construct the temporal state sequence corresponding to the target robot and the target object participating in the robot competition.
[0106] Step S410: Determine the competition status information corresponding to the robot competition at the current moment, and select candidate rules that match the competition status information from the preset rule base to form a preset rule set.
[0107] Step S412: Execute the rules contained in the preset rule set according to the rule execution order, which are used to detect the target robot and the target object.
[0108] Step S414: Generate judge structured data based on the detection results corresponding to the target robot and the detection results corresponding to the target object.
[0109] Step S416: Construct the penalty control instructions corresponding to the target robot based on the referee's structured data, and drive the target robot based on the penalty control instructions.
[0110] In summary, by automatically collecting referee world state data, constructing time-series state sequences, generating structured data based on rule sets, and achieving closed-loop control, the problem of blind spots, misjudgments, and delays caused by referees' reliance on external data is effectively solved. This approach has the advantages of improving the objectivity, real-time performance, and accuracy of judgments, while reducing dependence on external data.
[0111] Corresponding to the above method embodiments, this specification also provides embodiments of an automatic judging device for robot competitions. Figure 5 A schematic diagram of an automatic judging device for robot competitions according to one embodiment of this specification is shown. Figure 5 As shown, the device includes: The acquisition module 502 is configured to acquire world state data of the target referee during the robot competition. The construction module 504 is configured to construct a temporal state sequence corresponding to the target robot and the target object participating in the robot competition based on the historical referee world state data and the target referee world state data corresponding to the robot competition. The detection module 506 is configured to detect the time-series state sequence according to the preset rule set of the robot competition, and generate judge structured data based on the detection results; The drive module 508 is configured to construct the penalty control command corresponding to the target robot based on the referee's structured data, and drive the target robot based on the penalty control command.
[0112] In one optional embodiment, the acquisition of the target referee's world state data during the robot competition includes: Collect low-frequency and high-frequency referee world state data during robot competitions; Add the low-frequency referee world state data and the high-frequency referee world state data to the referee sampling window; The referee world state data in the referee sampling window is merged and deduplicated, and the target referee world state data is determined based on the processing results.
[0113] In an optional embodiment, prior to the step of collecting the target referee's world state data during the robot competition, the method further includes: Determine the competition layout data corresponding to the robot competition, wherein the competition layout data includes at least one of robot data, object data, and mapping data; The data collected during the robot competition, including the target referee's world state data, includes: Collect referee snapshot data during the robot competition, and determine the target referee's world state data based on the referee snapshot data and the competition layout data.
[0114] In an optional embodiment, after the step of collecting the target referee's world state data during the robot competition is executed, the method further includes: Determine the adjacent time information corresponding to the previous penalty cycle, and determine the target time information corresponding to the target referee world state data in the current penalty cycle based on the adjacent time information; The step of constructing the temporal state sequences corresponding to the target robot and the target object participating in the robot competition based on the historical referee world state data and the target referee world state data corresponding to the robot competition includes: Based on the historical referee world state data corresponding to the robot competition, determine the initial temporal state sequence corresponding to the target robot and the target object participating in the robot competition, and construct the target temporal state data corresponding to the target robot and the target object based on the target referee world state data; The target time-series state data is added to the initial time-series state sequence according to the target time information to obtain the time-series state sequences corresponding to the target robot and the target object, respectively.
[0115] In an optional embodiment, the step of detecting the temporal state sequence according to the preset rule set of the robot competition, and generating judge structured data based on the detection results, includes: Determine the competition status information of the robot competition at the current moment, and select candidate rules that match the competition status information from a preset rule base to form a preset rule set; The rules contained in the preset rule set are executed in the order of rule execution to detect the target robot and the target object; Based on the detection results corresponding to the target robot and the detection results corresponding to the target object, structured referee data is generated.
[0116] In one optional embodiment, the target referee world state data includes at least one of the following: The target object's position data, the target robot's attribute data, the target robot's posture data, the target robot's heading angle data, and the target object's robot contact data; The structured data of the judges includes at least one of the following: The data includes the competition status update data for the robot competition, the penalty time data for the target robot, the competition event data for the robot competition, the control data for the target object, and the pose adjustment data for the target robot.
[0117] In an optional embodiment, after the step of constructing the penalty control instruction corresponding to the target robot based on the referee's structured data is executed, the method further includes: An execution grace constraint is created based on the penalty control instruction, and when the execution grace constraint is in effect, the repeated construction of the penalty control instruction is suppressed. If the penalty control instruction takes effect, the execution grace constraint condition shall be revoked.
[0118] In an optional embodiment, after the step of driving the target robot to execute steps based on the penalty control instruction, the method further includes: Determine the robot control data corresponding to the target robot, as well as the event data and competition penalty data corresponding to the robot competition; Based on the robot control data, the event data, and the competition penalty data, construct the structured competition data corresponding to the robot competition; The structured data of the competition is stored in the target database, and the structured data of the competition stored in the target database is used to optimize the target robot.
[0119] The above is a schematic scheme of an automatic judging device for robot competitions according to this embodiment. It should be noted that the technical solution of this automatic judging device for robot competitions and the technical solution of the automatic judging method for robot competitions described above belong to the same concept. For details not described in detail in the technical solution of the automatic judging device for robot competitions, please refer to the description of the technical solution of the automatic judging method for robot competitions described above.
[0120] Corresponding to the above method embodiments, this specification also provides another embodiment of an automatic judging device for robot competitions. Figure 6 A schematic diagram of another automatic judging device for robot competitions, provided in one embodiment of this specification, is shown. Figure 6 As shown, the device includes: The data acquisition module 602 is configured to acquire target referee world state data during the simulated robot competition from the dynamic data of the physical process; The sequence construction module 604 is configured to construct a temporal state sequence corresponding to the simulated robot and the simulated object participating in the simulated robot competition based on the historical referee world state data and the target referee world state data corresponding to the simulated robot competition. The detection sequence module 606 is configured to detect the temporal state sequence according to the preset rule set of the simulation robot competition, and generate judge structured data based on the detection results; The status update module 608 is configured to construct the penalty control instructions corresponding to the simulation robot based on the referee's structured data, and update the status of the simulation robot based on the penalty control instructions.
[0121] The above is an illustrative scheme of another automatic judging device for robot competitions according to this embodiment. It should be noted that the technical solution of this automatic judging device for robot competitions belongs to the same concept as the technical solution of the automatic judging method for robot competitions described above. For details not described in detail in the technical solution of the automatic judging device for robot competitions, please refer to the description of the technical solution of the automatic judging method for robot competitions described above.
[0122] Figure 7 A structural block diagram of a computing device 700 according to one embodiment of this specification is shown. The components of the computing device 700 include, but are not limited to, a memory 710 and a processor 720. The processor 720 is connected to the memory 710 via a bus 730, and a database 750 is used to store data.
[0123] The computing device 700 also includes an access device 740, which enables the computing device 700 to communicate via one or more networks 760. Examples of these networks include Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or combinations of communication networks such as the Internet. The access device 740 may include one or more of any type of wired or wireless network interface (e.g., a network interface card (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) wireless interface, a Wi-MAX (Worldwide Interoperability for Microwave Access) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, or a Near Field Communication (NFC) interface.
[0124] In one embodiment of this specification, the above-described components of the computing device 700 and Figure 7 Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 7 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this specification. Those skilled in the art can add or replace other components as needed.
[0125] The computing device 700 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or personal computers (PCs). The computing device 700 can also be a mobile or stationary server.
[0126] The processor 720 is used to execute the following computer-executable instructions, which, when executed by the processor, implement the steps of the above-described automatic judging method for robot competitions.
[0127] The above is an illustrative scheme of a computing device according to this embodiment. It should be noted that the technical solution of this computing device and the technical solution of the above-described automatic judging method for robot competitions belong to the same concept. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solution of the above-described automatic judging method for robot competitions.
[0128] An embodiment of this specification also provides a computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the above-described automatic judging method for robot competitions.
[0129] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium belongs to the same concept as the technical solution of the automatic judging method for robot competitions described above. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solution of the automatic judging method for robot competitions described above.
[0130] An embodiment of this specification also provides a computer program product, including a computer program or instructions that, when executed by a processor, implement the steps of the above-described automatic judging method for robot competitions.
[0131] The above is an illustrative scheme of a computer program product according to this embodiment. It should be noted that the technical solution of this computer program product and the technical solution of the above-described automatic judging method for robot competitions belong to the same concept. For details not described in detail in the technical solution of the computer program product, please refer to the description of the technical solution of the above-described automatic judging method for robot competitions.
[0132] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0133] The computer instructions include computer program code, which may be in the form of source code, object code, executable file, or certain intermediate forms. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium may be appropriately added or removed according to the requirements of patent practice. For example, in some regions, according to patent practice, computer-readable media may not include electrical carrier signals and telecommunication signals.
[0134] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments in this specification are not limited to the described order of actions, because according to the embodiments in this specification, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to the embodiments in this specification.
[0135] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0136] The preferred embodiments disclosed above are merely illustrative of this specification. Optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the embodiments described in this specification. These embodiments are selected and specifically described in this specification to better explain the principles and practical applications of the embodiments, thereby enabling those skilled in the art to better understand and utilize this specification.
Claims
1. An automatic judging method for robot competitions, characterized in that, include: Collect world state data of the target referee during robot competitions; Based on the historical referee world state data and the target referee world state data corresponding to the robot competition, construct the temporal state sequence corresponding to the target robot and the target object participating in the robot competition respectively; The time-series state sequence is detected according to the preset rule set of the robot competition, and the judge structured data is generated based on the detection results; Based on the referee's structured data, the corresponding penalty control instructions for the target robot are constructed, and the target robot is driven based on the penalty control instructions.
2. The method according to claim 1, characterized in that, The target referee's world state data collected during the robot competition includes: Collect low-frequency and high-frequency referee world state data during robot competitions; Add the low-frequency referee world state data and the high-frequency referee world state data to the referee sampling window; The referee world state data in the referee sampling window is merged and deduplicated, and the target referee world state data is determined based on the processing results.
3. The method according to claim 1, characterized in that, Before the step of collecting the target referee's world state data during the robot competition, the following steps are also included: Determine the competition layout data corresponding to the robot competition, wherein the competition layout data includes at least one of robot data, object data, and mapping data; The data collected during the robot competition, including the target referee's world state data, includes: Collect referee snapshot data during the robot competition, and determine the target referee's world state data based on the referee snapshot data and the competition layout data.
4. The method according to claim 1, characterized in that, After the step of collecting the target referee's world state data during the robot competition is executed, it also includes: Determine the adjacent time information corresponding to the previous penalty cycle, and determine the target time information corresponding to the target referee world state data in the current penalty cycle based on the adjacent time information; The step of constructing the temporal state sequences corresponding to the target robot and the target object participating in the robot competition based on the historical referee world state data and the target referee world state data corresponding to the robot competition includes: Based on the historical referee world state data corresponding to the robot competition, determine the initial temporal state sequence corresponding to the target robot and the target object participating in the robot competition, and construct the target temporal state data corresponding to the target robot and the target object based on the target referee world state data; The target time-series state data is added to the initial time-series state sequence according to the target time information to obtain the time-series state sequences corresponding to the target robot and the target object, respectively.
5. The method according to claim 1, characterized in that, The step of detecting the temporal state sequence according to the preset rule set of the robot competition, and generating judge structured data based on the detection results, includes: Determine the competition status information of the robot competition at the current moment, and select candidate rules that match the competition status information from a preset rule base to form a preset rule set; The rules contained in the preset rule set are executed in the order of rule execution to detect the target robot and the target object; Based on the detection results corresponding to the target robot and the detection results corresponding to the target object, structured referee data is generated.
6. The method according to claim 1 or 5, characterized in that, The target referee's world state data includes at least one of the following: The target object's position data, the target robot's attribute data, the target robot's posture data, the target robot's heading angle data, and the target object's robot contact data; The structured data of the judges includes at least one of the following: The data includes the competition status update data for the robot competition, the penalty time data for the target robot, the competition event data for the robot competition, the control data for the target object, and the pose adjustment data for the target robot.
7. The method according to claim 1, characterized in that, After the step of constructing the judgment control instructions corresponding to the target robot based on the judge's structured data is executed, the method further includes: An execution grace constraint is created based on the penalty control instruction, and when the execution grace constraint is in effect, the repeated construction of the penalty control instruction is suppressed. If the penalty control instruction takes effect, the execution grace constraint condition shall be revoked.
8. The method according to claim 1, characterized in that, After the target robot steps are executed based on the penalty control command, the process further includes: Determine the robot control data corresponding to the target robot, as well as the event data and competition penalty data corresponding to the robot competition; Based on the robot control data, the event data, and the competition penalty data, construct the structured competition data corresponding to the robot competition; The structured data of the competition is stored in the target database, and the structured data of the competition stored in the target database is used to optimize the target robot.
9. An automatic judging method for robot competitions, characterized in that, include: Obtain the target referee's world state data from the dynamic data of the physical process during the simulated robot competition; Based on the historical referee world state data and the target referee world state data corresponding to the simulated robot competition, a temporal state sequence corresponding to the simulated robot and the simulated object participating in the simulated robot competition is constructed respectively. The temporal state sequence is detected according to the set of rules preset for the simulated robot competition, and the judge's structured data is generated based on the detection results. Based on the referee's structured data, the corresponding penalty control instructions for the simulation robot are constructed, and the state of the simulation robot is updated based on the penalty control instructions.
10. An automatic judging device for robot competitions, characterized in that, include: The data acquisition module is configured to collect world state data of the target referee during the robot competition. The construction module is configured to construct, based on the historical referee world state data and the target referee world state data corresponding to the robot competition, the temporal state sequence corresponding to the target robot and the target object participating in the robot competition. The detection module is configured to detect the time-series state sequence according to the preset rule set of the robot competition, and generate judge structured data based on the detection results; The driving module is configured to construct the penalty control instructions corresponding to the target robot based on the referee's structured data, and drive the target robot based on the penalty control instructions.
11. An automatic judging device for robot competitions, characterized in that, include: The data acquisition module is configured to acquire target referee world state data during the simulated robot competition from the dynamic data of the physical process; The sequence construction module is configured to construct temporal state sequences corresponding to the simulated robots and simulated objects participating in the simulated robot competition based on the historical referee world state data and the target referee world state data corresponding to the simulated robot competition. The detection sequence module is configured to detect the temporal state sequence according to the preset rule set of the simulation robot competition, and generate judge structured data based on the detection results; The status update module is configured to construct the penalty control instructions corresponding to the simulation robot based on the referee's structured data, and update the status of the simulation robot based on the penalty control instructions.
12. A computing device, characterized in that, include: Memory and processor; The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions, which, when executed by the processor, implement the steps of the method according to any one of claims 1 to 9.
13. A computer-readable storage medium, characterized in that, It stores computer-executable instructions that, when executed by a processor, implement the steps of the method according to any one of claims 1 to 9.
14. A computer program product, characterized in that, It includes a computer program or instructions that, when executed by a processor, implement the steps of the method according to any one of claims 1 to 9.