#22 Friends of Tracking Challenge – Appendix

Goals Overview – Tab 1

Designed to get a general overview of what the opposition team does well. This could be another subset of patterns of play that an opponent takes rather than just goals such as shots in the box, passes into the final 3rd, etc.

This tab shows the events and tracking data for the respective frames for all the Liverpool goals provided by Last Row.

Events – Pitch Value [Tab 2]

Designed to add context to the view of events that take place in previous tab. This will show what options were available to the player on the ball and what options the defence has covered. It can start discussions about player positioning off the ball and decisions made between events.

Pitch Value is created by adding the context of relevance (PT) and scoring opportunity (PS) to Pitch Control (PPCF) as outlined by @the_spearman.

pitch_value_model.py, generate_pitch_value, line 322

Pitch Control is also the implementation from @EightyFivePoint’s tutorials. This computes the probability that each team will control the ball in each position on the pitch, subject to interceptions, time to control the ball and player velocities.

pitch_value_model.py, lastrow_generate_pitch_control_for_event, line 259

Where relevance is computed as a normally distributed probability constrained by ball travel time and Pitch Control. Mean of 14m as per @the_spearman’s Beyond Expexted Goals, 2018

pitch_value_model.py, generate_relevance_at_event, line 270

Scoring opportunity is calculated as a normally distributed probability subject to the distance to goal.

pitch_value_model.py, generate_scoring_opportunity, line 298

Player Displacement – Pitch Value [Tab 3]

Once an area for improvement has been established, this tab will provide the opportunity to manually adjust a player’s position and get an updated view of Pitch Value. This can help to understand where players should be positioned at each event, with the consequences laid out. Reducing the Relative Pitch Control will help to prevent the opposition from scoring. Reducing their number of options will make them more predictable.

Pitch Value is as calculated from Tab 2.

Relative Pitch Value is calculated as the Pitch Value of each area divided by the Pitch Value at the current ball location for the event and frame. This shows areas which moving to will increase your Pitch Control, potentially providing suggestions for on/off ball decision making.

pitch_value_model.py, generate_relative_pitch_value, line 365

Hopefully this allows anyone who uses the app to understand how the values are computed without having to trawl through my messy code structure on GitHub.

Any further questions please do get in touch at @Ciaran_Grant or @TLMAnalytics

Lastly thanks again to all those contributing at Friends of Tracking for providing all the great content that they have been putting out. It really helps and inspires those of us who have been looking in from the outside!

@Soccermatics / @EightyFivePoint / @the_spearman / @JaviOnData

Beyond Expected Goals, Spearman W. – http://www.sloansportsconference.com/wp-content/uploads/2018/02/2002.pdf

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.