足球比賽不只是一條控球序列:用 Object-Centric Event Log 重建戰術流程
- 3分钟前
- 讀畢需時 6 分鐘
足球數據分析很常把一段進攻看成一串事件:傳球、接球、盤帶、射門。這種表示法容易理解,也適合很多 event data 分析。但它有一個限制:比賽不是只有球在移動。無球球員的跑位、防線移動、控球權轉換、球場區域變化,全部都會影響戰術流程。
論文中提出一個新的角度:把足球資料轉成 object-centric event logs,再加入 spatial context,讓 process mining 不只分析「球」的事件序列,也能同時看 match、team、possession、player、grid position 和 ball 之間的關係。這篇 paper 的貢獻,是把 object-centric process mining 帶入 football analytics,提供第一個足球場景的 object-centric event log 生成框架。
本文重點
傳統 process mining 通常依賴單一 case notion,例如把每次 possession 當作一個 case,然後分析這段 possession 裡發生了甚麼。但足球比賽天然是多物件系統:一個傳球事件涉及球、傳球球員、接球球員、控球隊、對手、場上區域和當前 possession。如果強行壓成單一 case,容易丟失關係,或產生 convergence / divergence 問題。
這篇 paper 的做法,是把足球事件資料和 tracking / spatial information 轉成 object-centric event log。作者用 Metrica Sports sample data 的兩場比賽做 validation,生成一個包含 37,358 events、813 objects、747 possessions 的 log,並展示單一物件視角與多物件視角如何產生不同戰術洞察。
一、甚麼是 Object-Centric Process Mining
Process mining 原本常用於商業流程,例如訂單到付款、物流配送、客服流程。傳統 event log 通常有一個 case id:每個 case 是一條流程,每個 event 按時間排序。例如一張訂單從下單、揀貨、出貨到付款,就是一條 case。
問題是,真實世界很多流程不只涉及一種 case。一個出貨事件可能同時關聯多張訂單、多件商品、一架貨車和一條路線。若硬要選其中一個做 case id,就可能出現三個問題:
Deficiency: 有些相關事件被忽略,因為它們不屬於選定 case。
Convergence: 同一事件被複製到多個 case,造成重複計算。
Divergence: 多個物件之間的因果關係被模糊化,難以看清真正流程。
Object-centric process mining 的想法,是讓一個 event 可以同時關聯多種 object type。放到足球裡,這正好自然:一個 shot 不只是 ball event,也涉及 player、team、possession、match 和 pitch location。
二、為何足球適合這種表示法
足球是高度 sequential 的 team sport,但每個事件背後都有多個互動物件。傳球不只是「球從 A 到 B」,它也反映控球隊的組織、接球者的位置、無球球員的跑動、對方防線的反應,以及球場區域的使用。
過去 process mining 在足球分析上的工作,通常集中在 on-ball actions,例如以控球權作為 case,分析 pass、shot、free kick 等事件序列。這對理解某段進攻有用,但會忽略無球球員行為。paper 特別指出,idle player 也可能對比賽成功很重要:他可能拉開空間、牽制防守者,或保持防線結構。
Object-centric 表示法的價值,就是把這些「不在球上」但仍與戰術有關的行為納入同一個流程資料模型。
三、框架:六類 Object 與三類 Event
作者提出的 football object-centric framework 包含六類 object:
match
team
possession
player
grid position
ball
這六類 object 對應不同分析層級。Match 可以回答某場比賽發生了多少 shot;team 可以分析多場比賽裡的 tactical evolution;player 可以追蹤個人跑位與傳球關係;possession 可以看一段進攻如何形成;grid position 則把 spatial context 變成可查詢的物件;ball 仍然保留傳統 on-ball event 的核心。
事件方面,paper 分成三大類:
Game-based events: 例如黃牌、犯規、tackle 等比賽事件。
Ball events: 例如 pass、shot、free kick,這些是 involving the ball 的特殊 game-based events。
Position-based events: 與球員位置變化相關,例如 Player changes position。作者的實作把 tracking trace 投射到球場 grid,當球員跨越格子時形成 position-based event。
這種設計令一個 football log 不再只是「球的故事」,而是可以同時記錄球、球員、控球權和空間如何互相連接。
四、Spatial Context:把球場切成 6 x 4 Grid
為了加入空間資訊,作者把球場切成 6 x 4 grid,共 24 個區域,從 A1 到 F4。每個 event 都可以記錄發生在哪個 grid position。
這樣做有兩個好處。第一,它降低 tracking data 的複雜度。原始 (x, y) coordinate 很細,但直接拿來做 process mining 會產生太多變化;grid 化後可以保留基本方向與區域資訊,同時令流程圖更可讀。
第二,grid position 被建模成 object,而不只是 attribute。這代表我們可以問更 object-centric 的問題,例如:
哪些 shot 來自某個 grid position?
哪位球員在某個區域停留最久?
一段 possession 中,球和球員如何穿過不同區域?
這對戰術分析很有意思,因為 football tactics 往往不是只看事件種類,也要看事件在哪裡發生。
五、Evaluation:用 Metrica Sports 兩場比賽生成 OCEL
作者用 Metrica Sports sample data 的兩場比賽驗證框架。這個資料集包含 event data 和 25 Hz player tracking data,因此適合把球上事件與球員位置結合。
生成流程大致如下:
第一,將 player movement traces 重新投射到 grid coordinate system,辨識有意義的 player movement events,例如球員從一格移動到另一格。
第二,做 event engineering,把聚合事件拆解成更容易解釋的事件,並清楚指定它們與哪些 object 相關。
第三,按時間順序合併 movement events 與 game-based events,並把 contextual information 傳遞到 movement events。
第四,加入 derived attributes,例如 travel distance、duration 和 current score。
最後,作者用 PM4Py 把 processed DataFrame 轉成 object-centric event log。生成結果包括 37,358 個 events、813 個 objects、747 個 possessions,涵蓋 game-based events 與 position-based events。
六、單一物件視角 vs 多物件視角
文中用 directly-follows graph 比較單一 object type 和 multi-object type 的分析差異。若只看 ball object,就會得到傳統 on-ball 流程:set piece 後通常接 pass,一次或多次 pass 後出現 shot,某些 possession 最後形成 goal。
這種圖能回答「球如何流動」,但看不到球員如何移動。當作者加入 player 和 possession objects 後,圖中出現更多直接跟隨關係,也出現大量 Player changes position 活動。這些 self-loops 和移動事件,雖然令圖更複雜,但也揭示了傳統 ball-only log 看不見的內容:球員在球外如何調整位置。
這裡的重點不是多物件圖一定更漂亮,而是它提供了更完整的資料基礎。分析者可以選擇只看 ball,也可以加入 player、possession 或 grid position,視乎問題需要。
七、用 Spatial Map 看一段進攻
文中另一個例子,是把一段導致 shot 的 possession 畫到 spatial map 上。單看 ball object,可以看見球從中場 B3 recovery 開始,傳到 B4,再回到 B3,然後轉移到右路、進入對方半場,最後在 F2 附近射門。
加入 player objects 後,同一段進攻的解讀更豐富。例如 Player15 只從 C3 移動到 D3,基本留在中路;Player18 則從左中場 C4 一路移動到 F2,最後參與射門區域。整體上,也可以看見球員群體隨球向前推進。
這就是 object-centric spatial log 的價值:它不只是重播球路,而是讓分析者同時看見球、個別球員和空間占用如何共同形成一段進攻。
八、限制與後續方向
第一,足球比賽非常多變。Object-centric model 能捕捉更多複雜性,但也會令流程圖變得龐大和難讀。因此作者指出,未來需要 variant analysis、filtering techniques 或 interactive visualization,幫助分析者從大量變化中找出 outcome-centric patterns。
第二,這篇 paper 只用兩場 Metrica Sports sample data 做 validation。框架概念有推廣性,但仍需要在更多資料源上測試,例如 StatsBomb、Wyscout、DFL tracking data,或其他 team sports。
第三,grid 化空間雖然提高可讀性,但也會犧牲細節。6 x 4 grid 適合展示框架,但實務上不同分析任務可能需要不同 spatial resolution。例如研究 high press 觸發點、half-space 使用或禁區內跑位,可能需要更細或自適應的空間劃分。
九、小結
文中的意義,在於把足球資料從傳統「單一控球序列」推向多物件流程表示。它提醒我們,足球不是只有球在發生事件;球員、隊伍、控球權、空間位置和比賽狀態,都應該成為流程資料的一部分。
對 football analytics 而言,object-centric event log 可以成為一種新的中間表示:比 raw tracking data 更結構化,比傳統 event log 更完整。若未來配合互動式可視化、variant filtering 和 outcome analysis,它可能會成為分析 tactical pattern、team behavior 和 off-ball movement 的有用工具。
Reference
V. Chan, L. Ebert, P.-J. Hillmann, C. Rubensson, S. A. Fahrenkrog-Petersen, J. Mendling. Transforming Football Data into Object-centric Event Logs with Spatial Context Information. arXiv:2507.12504v1 [cs.DB], 2025. https://arxiv.org/abs/2507.12504
W. M. P. van der Aalst. Object-centric process mining: Dealing with divergence and convergence in event data. SEFM, 2019.
P. Kröckel, F. Bodendorf. Process mining of football event data: A novel approach for tactical insights into the game. Frontiers in Artificial Intelligence, 2020.
原文 Paper




