Chapter 10: Key Takeaways
Quick Reference Summary
Passing networks transform qualitative team play into quantitative, analyzable structures using graph theory.
Core Concepts
Network Fundamentals
Graph G = (V, E)
- V = Players (nodes)
- E = Passes (edges)
- Weighted: Edge weight = number of passes
- Directed: A→B distinct from B→A
Adjacency Matrix
$$A_{ij} = \text{number of passes from player } i \text{ to player } j$$
For 11 players: 11×11 matrix with up to 110 directed edges.
Essential Metrics
Player-Level (Centrality)
| Metric | Formula | Meaning |
|---|---|---|
| Degree | $k_v = \sum_u A_{vu} + A_{uv}$ | Total involvement |
| In-Degree | $k_v^{in} = \sum_u A_{uv}$ | Passes received |
| Out-Degree | $k_v^{out} = \sum_u A_{vu}$ | Passes made |
| Betweenness | $\frac{\sigma_{st}(v)}{\sigma_{st}}$ | Bridge between groups |
| Closeness | $\frac{n-1}{\sum_u d(v,u)}$ | Reach to all teammates |
| PageRank | Recursive importance | Connected to key players |
Network-Level
| Metric | Formula | Interpretation |
|---|---|---|
| Density | $\frac{|E|}{n(n-1)}$ | Connectivity ratio |
| Centralization | $\frac{\sum(C_{max}-C_i)}{max}$ | Inequality of importance |
| Clustering | $\frac{2T_v}{k_v(k_v-1)}$ | Triangle frequency |
| Entropy | $-\sum p_{ij}\log p_{ij}$ | Passing unpredictability |
Quick Interpretation Guide
Centrality Patterns
| Profile | Player Type | Example Position |
|---|---|---|
| High degree, high betweenness | Hub player | Central midfielder |
| High out-degree, low in-degree | Distributor | Deep-lying playmaker |
| High in-degree, low out-degree | Target | Striker |
| High betweenness, low degree | Connector | Holding midfielder |
| Low all metrics | Peripheral | Wide defender |
Network Properties
| Property | High Value Indicates | Low Value Indicates |
|---|---|---|
| Density | Many passing routes active | Limited passing options |
| Centralization | Star player dependency | Distributed importance |
| Clustering | Triangle combinations | Linear passing chains |
| Entropy | Varied, unpredictable | Repetitive patterns |
Typical Benchmarks
Network Density by Style
- Possession teams: 0.40 - 0.50
- Balanced teams: 0.30 - 0.40
- Direct teams: 0.20 - 0.30
Centralization Thresholds
- Balanced team: < 0.25
- Moderate dependency: 0.25 - 0.35
- Star dependency: > 0.35
Clustering Coefficient
- High combination play: > 0.40
- Average: 0.30 - 0.40
- Limited triangles: < 0.30
Python Quick Reference
Build Network
import networkx as nx
G = nx.DiGraph()
pass_counts = passes.groupby(['player', 'pass_recipient']).size()
for (passer, receiver), count in pass_counts.items():
G.add_edge(passer, receiver, weight=count)
Calculate Centralities
# Degree
degree = dict(G.degree(weight='weight'))
# Betweenness
betweenness = nx.betweenness_centrality(G, weight='weight')
# PageRank
pagerank = nx.pagerank(G, weight='weight')
# Closeness
closeness = nx.closeness_centrality(G, distance='weight')
Network Metrics
# Density
density = nx.density(G)
# Clustering (undirected)
clustering = nx.average_clustering(G.to_undirected(), weight='weight')
Basic Visualization
from mplsoccer import Pitch
pitch = Pitch()
fig, ax = pitch.draw()
for u, v, d in G.edges(data=True):
ax.annotate('', xy=pos[v], xytext=pos[u],
arrowprops=dict(arrowstyle='->', lw=d['weight']/5))
for player, (x, y) in pos.items():
ax.scatter(x, y, s=degree[player]*10)
Common Mistakes to Avoid
- Ignoring direction: Always use directed graphs for passing networks
- Neglecting weights: Unweighted analysis misses pass frequency information
- Single-match conclusions: Network properties vary match-to-match
- Context blindness: Score, opponent, and game state affect networks
- Over-interpretation: High centrality isn't always "good"
- Formation effects: Different formations naturally produce different structures
Practical Workflow
1. Data Preparation
Load events → Filter successful passes → Extract player pairs
2. Network Construction
Create DiGraph → Add weighted edges → Calculate positions
3. Analysis
Player centralities → Network metrics → Top combinations
4. Visualization
Network plot → Matrix heatmap → Comparative charts
5. Interpretation
Combine metrics → Consider context → Draw tactical insights
Key Formulas Reference Card
Density
$$D = \frac{|E|}{|V|(|V|-1)}$$
Degree Centrality
$$C_D(v) = \frac{k_v}{n-1}$$
Betweenness Centrality
$$C_B(v) = \sum_{s \neq v \neq t} \frac{\sigma_{st}(v)}{\sigma_{st}}$$
Closeness Centrality
$$C_C(v) = \frac{n-1}{\sum_{u \neq v} d(v, u)}$$
Clustering Coefficient
$$C_i = \frac{2T_i}{k_i(k_i-1)}$$
Network Entropy
$$H = -\sum_{i,j} p_{ij} \log(p_{ij})$$
Centralization
$$C = \frac{\sum_{i=1}^{n}(C_{max} - C_i)}{max\sum_{i=1}^{n}(C_{max} - C_i)}$$
Applications Summary
| Application | Key Metrics | Primary Use |
|---|---|---|
| Player evaluation | Degree, betweenness, PageRank | Identify key contributors |
| Style classification | Density, centralization, entropy | Team profiling |
| Opponent scouting | All metrics + visualization | Pre-match preparation |
| Tactical adjustments | Temporal network comparison | In-match analysis |
| Role identification | Centrality profiles | Position analysis |
| Combination finding | Edge weights, motifs | Set piece design |
Next Chapter Preview
Chapter 11: Possession and Territorial Control extends network concepts to understand spatial dominance, ball control zones, and territorial metrics that capture how teams control areas of the pitch beyond individual passing actions.