Lorsque nous avons abordé le principe des Expected Goals (ou xG), autrement dit la "chance statistique" d'une tentative d'être convertie en but, nous avons soulevé deux points fondamentaux:

  1. l'importance de cette mesure pour une meilleure compréhension du réel
  2. la difficulté de recueillir des données fiables étant donnée la complexité d'une situation de jeu et du décodage de celle-ci.

Il est plus ou moins admis que les bataillons d'analystes de données travaillant pour les clubs ou instituts privés s'appuient sur une demi-douzaine voire une dizaine de paramètres afin d'évaluer cette probabilité de conversion qui nous intéresse tant: la distance et l'angle du tir, la partie du corps avec laquelle s'est effectué ce tir, la présence de défenseurs entre le ballon et le but (chaque défenseur projetant une "zone d'ombre" derrière lui), l'identité du tireur...Bref une batterie d'analyses de divers paramètres s'impose, bien au-delà des capacités de simples amateurs de ballon comme nous.

Et donc que nous propose le jeu à ce niveau là ? Hébin...pas grand chose. Et pourtant l'analyse des xG, que l'on peut étendre au xG contre et aux Expected Assists (xA), est un outil puissant dans l'évaluation des performances individuelles et collectives. Pas grand chose, du moins rien de directement exploitable. Par contre il nous est offert, si l'on peut dire, une possibilité de reconstituer manuellement les données manquantes, du moins en partie. Cet outil présent dans le jeu n'est rien d'autre que l'écran d'analyse des matchs (onglet Analyse > Equipes).

 

  • Le recueil

 

J'en vois déjà qui font la grimace. En effet c'est fouillis et il y a des flèches partout. Ceci dit on y voit bien plus clair lorsque l'on joue avec le slider afin de réduire la période de temps concernée. A partir de cet écran j vais m'intéresser à deux types de flèches: les vertes (les buts) et les pas vertes (les pas buts). Oui je sais, c'est très binaire et extrêmement réducteur, mais c'est beaucoup mieux que rien. Partant de là, comment exploiter ce que l'on visualise à l'écran ?

En examinant ces fameuses flèches j'obtiens trois informations: la distance, l'angle et l'issue du tir. Je vais devoir faire avec ça.

La prochaine étape sera de découper le terrain en zones afin de classer les données des tirs. Mon découpage est complètement arbitraire, rien ne vous empêche d'adapter la chose à votre convenance.

Découpage du terrain en 8 zones
Découpage du terrain en 8 zones

Dorénavant il ne restera "que" le travail fastidieux, à savoir répertorier chaque tir en fonction de son issue (réussite ou échec) et compiler les données recueillies dans un tableau.

Pour information les données ont été recueillies sur 56 matchs. 1278 tirs constitue pour moi un échantillon significatif et donc suffisant à partir duquel les variations observées sont marginales. On pourrait cependant aller plus loin les données concernant la zone 1, mais on peut se dire également que l'ensemble des tirs effectués représente moins 2% des tirs totaux. La variation relativement importante ne concerne donc qu'une population faible, ce qui ne gênera pas trop au moment de l'exploitation.

Les penaltys sont traités à part, le chiffre obtenu ne correspond ni plus ni moins qu'au taux de réussite des équipes de la division dans cet exercice. Dans mon cas, le taux de conversion d'un tir au but est de 0.85.

Parfois, et même assez souvent, il est difficile de déterminer avec précision la zone du tir étant donné que le rond représentant le tireur se situe à cheval entre deux voire trois zones. Dans ce cas ignorez-le, tout simplement, car vu l'échantillon disponible vous ne serez pas à court de données. Par contre s'il s'agit d'un but et que vous décidez de le retenir, il est indispensable de visionner le ralenti étant donné que la fréquence est plus faible donc plus impactante. 

Après coup je me dis également qu'il est possible de regrouper les zones 3 et 4, également les zones 5 et 6 étant donné que les résultats obtenus sont très proches. Encore une fois c'est adaptable. Pensez que c'est également évolutif: chaque journée de championnat ou match de votre équipe est une nouvelle source de données.

Vous pouvez très bien utiliser directement les données de mon propre tableau pour votre propre partie, bien que je ne le recommande pas. En effet il est fort envisageable que ces données changent dès lors que l'observation se porte sur un autre championnat et/ou un autre niveau. Dans quelle mesure ? Je n'en sais rien. Ici c'est de la D7 anglaise. Probablement je les utiliserais telles quelles pour de la british D6 ou D5, mais pas pour de la Bundesliga

  

  • L'exploitation

Pour moi l'exploitation des xG dans l'analyse d'un match, ou d'une partie de la saison, présente un double intérêt: d'une part je cherche à savoir si le résultat d'un match est représentatif de son déroulement, d'autre part cela me permet d'évaluer la dynamique de l'efficacité de mes attaquants, s'ils sont en pleine réussite ou au contraire s'ils vendangent, s'ils sont sevrés d'occasions auquel cas il me faudra revoir mon animation...

Deux choses importantes à préciser en amont:

  • si deux tentatives ont lieu au cours de la même minute de jeu, je considère qu'il s'agit en fait de la même action et je ne traite que la plus favorable des deux. Dans la réalité cela correspondrait par exemple à un tir contré repris par un partenaire qui tire à son tour. Statistiquement deux tirs pourraient fort bien engendrer deux issues favorables, or on voit bien qu'il est impossible pour une équipe de marquer deux fois lors d'une même phase de jeu. On retrouve là, à l'inverse d'autres sports, la difficulté que l'on peut rencontrer pour délimiter proprement une action en football.
  • à chaque occasion franche recensée par l'ordinateur j'attribue un xG de 0.5, à chaque demi-occasion un xG de 0.25. Pourquoi cela ? Car je considère qu'à cette occasion le jeu a en quelque sorte "fait le travail à ma place", c'est-à-dire qu'il a analysé les paramètres de l'action pour en déduire une occasion franche ou une demi-occasion. Pourquoi ces valeurs ? Aucune raison, c'est un parti pris. Et comme tout parti pris il est discutable, l'essentiel étant de rester cohérent et analyser les choses avec une constance dans la méthode.

A présent il nous manque l'outil qui va nous permettre de transformer l'ensemble de données recueillies, les xG de chaque équipe, en stats de match c'est-à-dire répondre à la question: quel est le résultat statistique d'un match dont j'ai extrait les éléments individuels ? En corollaire, comment transformer les Expected Goals en Expected Points (xPts) ? Hé bien cet outil le voila:

 

https://danny.page/expected_goals.html

 

Illustrons par un exemple volontairement simplifié.

 

Votre équipe (Team A) a tiré 5 fois au but: l'ordinateur a déterminé 1 occasion franche (xG=0.5), une demi-occasion (xG=0.25) qui accompagnent 2 autres tirs effectués depuis la zone 4 (0.11x2) ainsi qu'un tir depuis la zone 6 (0.08).

L'équipe adverse (Team B) s'est quant à elle signalée par 1 occasion franche (0.5) et 2 demi-occasions (0.25x2). Quel est donc le résultat statistique de ce match virtuel ? 

Après un grand nombre de tirages simulés par l'ordinateur, méthode Monte-Carlo dans le jargon, le résultat statistiquement déterminé apparaît sous nos yeux ébahis: les paramètres du match aboutissent sur une probabilité de victoire de 35% de l'équipe A et lui rapportent en moyenne 1.38 points par match disputé. Voici la "réalité statistique" du match. 10 matchs gagnés de la sorte rapporteraient en réalité 30 points alors que le gain statistique ne serait que de 13.8 pts. Étendu à l'ensemble d'une demi-saison voire d'une saison complète, on voit bien les possibilités d'analyse qui nous sont offertes. 

 

En se donnant la peine d'exploiter sous un tel angle les données d'un match, d'un enchaînement de matchs ou même d'une saison complète, nous bénéficions d'un retour bien plus précis sur l'efficacité de notre équipe, et donc de notre propre action lors d'un essai tactique par exemple. Il est vrai que c'est exigeant, fastidieux, technique, on pourrait même dire dispensable par rapport à la "facilité" du jeu. Mais la profondeur certes imparfaite sera toujours préférable à la superficialité insignifiante, du moins c'est mon avis. Une compréhension plus fine de la réalité, des raisons de la réussite ou de l'échec n'ont pas de prix. En attendant, évidemment, un outil efficient directement implémenté dans le jeu

 

Update 1: idée de majoration / minoration des xG pour chaque issue de tir afin de refléter les conditions de la frappe (tir non cadré: présence de défenseurs pour gêner la frappe, maladresse ou fatigue du tireur, tir contré: présence de défenseurs sur la trajectoire du tir)

  • tir cadré: +0.05
  • tir non cadré: -0.05 (min 0.01)
  • tir contré: -0.10 (min 0.01)

Update 2: les xG ont été implémentés sur FM21, même si la méthode n'est pas dévoilée cela rend bien évidemment l'essentiel de cet article obsolète, et c'est tant mieux. Le calculateur de xPts reste lui toujours valable et son utilisation est recommandée.