EDMS State Definition
Overview
EDMS (Expandable Decision-Making State) is an advanced state definition system specialized for sophisticated soccer analysis and complex multi-agent learning scenarios. It provides a three-layer structured state representation containing more detailed information than PVS, numerically expressing the tactical aspects of soccer.
Data Structure
EDMS has a hierarchical structure composed of three main state levels:
class State_EDMS(BaseModel):
relative_state: RelativeState # Relative state (OnBall/OffBall)
absolute_state: AbsoluteState # Absolute state (formation, etc.)
raw_state: RawState # Raw state data (same structure as PVS)
State Level Details
1. Relative State
Numerical representation of relative relationships between players and ball, goal, and other players:
OnBall (Information of ball-possessing player):
dist_ball_opponent: List of distances between opponent players and ball
dribble_score: List of dribble evaluation scores
dribble_score_vel: List of dribble scores considering velocity
dist_goal: List of distances to goal
angle_goal: List of angles to goal
ball_speed: Ball velocity
transition: List of transition evaluations
shot_score: Shot evaluation score
long_ball_score: List of long ball evaluation scores
OffBall (Information of non-ball-possessing players):
fast_space: List of space scores
fast_space_vel: List of space scores considering velocity
dist_ball: List of distances to ball
angle_ball: List of angles to ball
dist_goal: List of distances to goal
angle_goal: List of angles to goal
time_to_player: List of time to reach other players
time_to_passline: List of time to reach pass line
variation_space: List of space scores when moving in 8 directions
variation_space_vel: List of space scores considering velocity when moving in 8 directions
defense_space: List of space scores for defensive players
defense_space_vel: List of space scores for defensive players considering velocity
defense_dist_ball: List of ball distances during defense
2. Absolute State
Tactical information for the entire team:
dist_offside_line: List of distances to offside line
formation: Formation string
attack_action: Action list of attacking team
defense_action: Action list of defending team
3. Raw State
Basic data with the same structure as PVS:
ball: Ball position and velocity information
players: List of all players
attack_players: List of attacking team players
defense_players: List of defending team players
Player Information
EDMS player information uses the same structure as PVS:
index: Player index
team_name: Team name
player_name: Player name
player_id: Player ID
player_role: Player position
position: Player position information (x, y coordinates)
velocity: Player velocity information
action: Player action
action_probs: Probability of action occurrence (optional)
Action Structure
EDMS adopts a two-dimensional action structure:
action: List[List[str]] # [attacking team action, defending team action]
This structure enables the following:
action[0]: Action list of each player in the attacking team (attack_action)
action[1]: Action list of each player in the defending team (defense_action)
Expression of tactical coordinated behavior for each team
EDMS Distinctive Features
Advanced Analysis by Relative State
The greatest feature of EDMS is detailed analysis through relative state (RelativeState):
Spatial Evaluation System:
fast_space: Numerical representation of player’s reachable area
variation_space: Management of reachable areas when multiple players move in 8 directions with 2D arrays
defense_space: Evaluation of defensive players’ reachable areas with dedicated indicators
Integration of Time Elements:
time_to_player: Calculate time to reach other players
time_to_passline: Predict time to reach pass line
Velocity-considered indicators: Integration of velocity information in many evaluations (indicators with _vel suffix)
Tactical Insights:
dribble_score: Numerical representation of space scores when moving in 8 directions during ball possession
shot_score: Evaluation of shot success probability
transition: Evaluation during offensive/defensive transitions
long_ball_score: Evaluation of long ball tactics
Data Processing Flow
EDMS has the following processing flow:
Raw State Generation - Acquire basic position, velocity, and action information same as PVS
Relative State Calculation - Numerical representation of detailed OnBall/OffBall relative relationships - Calculate various scores and evaluation indicators
Absolute State Construction - Extract formation information - Calculate offside line distances - Organize team-level actions
Integrated State Representation - Complete State_EDMS structure integrating three state levels
Usage
Example of using the EDMS system:
SAR_data = SAR_data(
data_provider="fifawc",
state_def="EDMS", # Specify EDMS state definition
data_path=data_path,
match_id="3814",
preprocess_method="SAR"
)
Application Scenarios
EDMS is optimal for the following advanced applications:
Research & Academic Use
Soccer AI Research: Cutting-edge multi-agent AI research
Tactical Analysis Research: Academic-level tactical and strategic analysis
Sports Science: Scientific evidence-based player and team analysis
Commercial Applications
Professional Team Analysis: Tactical analysis systems for professional soccer teams
Player Evaluation: Advanced player performance evaluation
Tactical Planning Support: Decision support for coaching and tactical planning
Advanced Applications
Real-time Analysis: Live tactical analysis during matches
Prediction Systems: High-precision prediction of match results and play outcomes
Technical Specifications
Computational Complexity
Spatial Calculation: O(n²) ~ O(n³) complexity (depending on number of players n)
Probability Calculation: Multivariate optimization using statistical models
Real-time Constraints: High-performance computing environment recommended
Memory Requirements
Approximately 3-5 times the memory usage of PVS
Retention of large amounts of intermediate calculation results
Learning effects through accumulation of historical data
Technical Comparison with PVS
Feature |
PVS |
EDMS |
|---|---|---|
Data Structure |
Simple |
3-layer hierarchy |
Computational Complexity |
O(n) |
O(n²) ~ O(n³) |
Memory Usage |
Lightweight |
Heavy (3-5x PVS) |
Processing Speed |
Fast |
Medium~Slow |
Analysis Depth |
Basic |
Research-level |
Tactical Analysis |
Not supported |
Advanced support |
Spatial Analysis |
None |
Voronoi diagram based |
Probability Modeling |
None |
Multivariate statistical model |
Real-time Suitability |
Optimal |
Depends on computing resources |
Learning Curve |
Easy |
Steep |
System Requirements
Recommended Environment
CPU: High-performance multi-core processor
RAM: 16GB or more (32GB or more for large datasets)
Storage: High-speed SSD (generates large amounts of intermediate files)
Dependency Libraries
NumPy/SciPy: Scientific computing
Pandas: Data processing
Scikit-learn: Machine learning algorithms
Computational geometry library: Voronoi diagram calculation
Statistical library: Probability model calculation
File Structure
Main EDMS-related files:
SAR_class.py: Factory class for PVS/EDMS switchingdataclass.py: EDMS data class definitions (shared with PVS)preprocess_frame.py: EDMS processing functionssoccer_SAR_state.py: Main processing routing for EDMS
Data Class Structure
EDMS consists of the following classes:
Basic Classes: * Position, Velocity: Position and velocity information * Player, Ball: Player and ball information (shared with PVS)
EDMS-specific Classes: * OnBall: Detailed information during ball possession * OffBall: Detailed information during non-ball possession * RelativeState: OnBall + OffBall * AbsoluteState: Formation, offside, etc. * RawState: Basic position information (same structure as PVS State_PVS) * State_EDMS: Integration of three state levels
Event Classes: * Event_EDMS: EDMS state + 2D action + reward * Events_EDMS: Sequence management of multiple events
Summary
EDMS is a three-layer structured state definition system that maintains the basic structure of PVS while having two additional layers: relative state (RelativeState) and absolute state (AbsoluteState).
Key Features:
Provides detailed relative relationships and tactical information in addition to PVS basic information
Multi-faceted analysis indicators including spatial evaluation, time calculation, and tactical scores
Optimal for advanced soccer analysis and complex multi-agent learning
Both systems share the same basic classes such as Player and Ball, enabling efficient soccer data analysis by appropriately selecting according to the intended use.