İçeriğe geç
Skor modelleri

Monte Carlo simülasyonu ile bir lig sezonu: puan tablosu ne kadar kararlı

Yirmi kurgusal takımlı bir ligi 10.000 kez oynatan Monte Carlo simülasyonu: en güçlü takım kaç sezonda şampiyon olur, tek bir maç sıralamayı ne kadar oynatır?

Yazan Yayın: 6 dk okuma
Monte Carlo simülasyonu: 20 kurgusal takımın bitiş sırası aralıklarını gösteren yatay çubuk grafiği, 10.000 sezon

Yirmi takımlı kurgusal bir ligde en güçlü takımın beklenen puanı 77,1, en zayıfınki 29,3. Tek bir sezon bu beklentilere uymaz: en güçlü takımın puanı sezondan sezona 65 ile 89 arasında oynar. Sezonu on bin kez oynatınca ise sonuçların dağılımı görünür hale gelir. Bu yönteme Monte Carlo simülasyonu denir: kuralları belli bir süreci rastgele sayılarla çok kez çalıştırmak ve çıkan sonuçları saymak. Yöntemin matematiksel fizik problemleri için genel bir tarifi Metropolis ve Ulam'ın 1949 tarihli makalesinde yayımlandı. Buradaki simülasyon a03.mjs betiğiyle, tohum 20261104'ten türetilen rastgele sayılarla çalıştırıldı; takımların hepsi kurgusaldır.

Monte Carlo simülasyonu nasıl kurulur

Kurulum üç parçadan oluşur. Her takıma, bilinen ve sezon boyunca değişmeyen bir güç değeri verilir; 20 takımın gücü, gol oranının logaritması ölçeğinde 0,35 ile −0,35 arasında eşit aralıklarla dizildi ve en güçlü ile en zayıf arasındaki fark 0,70 oldu; bu, en güçlü takımın gol oranının en zayıfınkinin yaklaşık iki katı olması demektir. Bir maçta ev sahibinin gol ortalaması, taban değer 0,22 ile ev sahibi avantajı 0,20'nin ve iki takımın güç farkının toplamının üssü; konuğun ortalaması ise taban değer ile güç farkının üssüdür. Goller, Poisson gol dağılımı yazısındaki gibi bu ortalamalardan çekilir. Son olarak 380 maç oynatılır, galibiyet 3, beraberlik 1 puan sayılır ve tablo puan, averaj ve atılan gole göre sıralanır.

for (let h = 0; h < 20; h++) for (let a = 0; a < 20; a++) {
  if (h === a) continue;
  const gh = poisson(Math.exp(0.22 + 0.20 + th[h] - th[a]));
  const ga = poisson(Math.exp(0.22 + th[a] - th[h]));
  if (gh > ga) pts[h] += 3; else if (gh < ga) pts[a] += 3; else { pts[h]++; pts[a]++; }
}

Döngünün tamamı tek bir sezondur. 10.000 kez tekrarlanır ve her tekrarda her takımın puanı ile bitiş sırası kaydedilir. Hiçbir sezon gerçek bir tahmin değildir; her biri aynı kuralın bir olası gerçekleşmesidir.

Sezonu 10.000 kez oynatınca

Aşağıdaki tablo 20 takımın dokuzunu gösteriyor. Puan ve sıra aralıkları %5 ile %95 yüzdelikleri arasındadır; yani sezonların %90'ı bu aralığın içinde biter.

TakımBeklenen puanPuan aralığıMedyan sıraSıra aralığıŞampiyonluk (%)İlk 4 (%)Son 3 (%)
Takım A77,165-8921-639,688,10,0
Takım B74,762-8731-725,579,50,0
Takım D69,457-8241-99,054,70,0
Takım G61,649-7473-121,217,60,1
Takım J53,941-67105-150,13,10,6
Takım K51,139-64116-160,01,41,2
Takım N43,531-56149-180,00,110,0
Takım Q36,225-481712-200,00,039,3
Takım T29,319-401915-200,00,077,7
Monte Carlo simülasyonu: 20 kurgusal takımın 10.000 sezonluk bitiş sırası olasılıklarını gösteren ısı haritası
Şekil 1. Her satır bir takım, her sütun bir bitiş sırası; açık hücreler o sırada bitirme sıklığının yüksek olduğunu gösterir.

Isı haritasında diyagonal bant görünür, ama bant genişdir. En güçlü takım bile altıncı sıraya kadar inebiliyor ve ortadaki takımlar için aralık daha da açılıyor. Güç farkı sabit ve bilinen bir değer olduğu hâlde puan tablosu kendi başına bir ölçüm aracı gibi davranmıyor: aynı gücün çıktısı sezondan sezona çok değişiyor.

Şampiyon kim olur

En güçlü takımın ortalama puanı 77,1 ve puanının %90 aralığı 65 ile 89 arasındadır. Buna rağmen şampiyonluk oranı yalnızca %39,6 çıktı; sezonların %60 kadarında şampiyon başka bir takım oldu. A ile B takımlarının şampiyonluk oranları toplandığında %65,2 eder; ilk üç takımın toplamı %80,7 olur. Güç sıralamasında yedinci olan G takımı sezonların %1,2 kadarında şampiyon oldu ve ilk beşin dışındaki takımların toplam şampiyonluk oranı %4,6 çıktı.

Şampiyonun puanı ortalama 82,3, %90 aralığı 75 ile 91 arasındadır. Birinci ile ikinci arasındaki fark ortalama 5,3 puandır; sezonların %42 kadarında bu fark 3 puan ya da daha azdır, %20 kadarında ise en fazla bir puandır. Şampiyonluk bu yüzden çoğu sezonda son haftalara taşınan bir sonuçtur ve tek bir maçın yönüyle belirlenebilir.

Orta sıradaki takım: 11 basamaklık aralık

Güç sıralamasında onuncu olan J takımının medyan bitiş sırası 10 olur. Sezonların %90'ında 5. ile 15. sıra arasında bitirir; bu 11 basamaklık bir aralıktır. Yirmi takımlı bir ligde 11 basamak tablonun yarısından fazlasıdır: aynı güçteki takım üst yarıdan alt yarıya uzanan bir bölgede bitirebilir. Bir sezonun ortasındaki takımın sırası, takımın gücünden çok o sezonun şansını anlatır.

Komşu takımlar arasındaki puan farkları da küçüktür. Ortalama bir sezonda takımların %58 kadarının tablodaki en yakın komşusu 1 puan ya da daha az uzaktadır; %86 kadarının komşusu 3 puan ya da daha az uzaktadır. Tek bir galibiyetin değeri 3 puan olduğuna göre, çoğu takımın sırası bir maçın sonucuyla değişebilir.

Tek maçın payı

Sıralamanın bu kadar oynak olduğu iddiası ayrıca sınandı. Her sezonda rastgele bir takım seçildi, onun rastgele bir beraberliği bir gol farklı galibiyete çevrildi ve tablo yeniden sıralandı. Bu değişiklik takıma 2 puan ve +1 averaj kazandırır, rakibe 1 puan ve −1 averaj kaybettirir. 9.999 sezonlu denemede takım, sezonların %57 kadarında sıralamada hiç yükselmedi; geri kalanında en az bir basamak çıktı.

Bir beraberlik galibiyete dönüşünce sıralamada yükselen basamak sayısının dağılımı, Monte Carlo simülasyonu sonucu
Şekil 2. Rastgele bir beraberlik 1 farklı galibiyete dönerse sıralamadaki değişim; yatay eksen yükselen basamak sayısı.

Takımlar sezonların %43 kadarında en az bir, %11 kadarında en az iki, %2 kadarında en az üç basamak yükseldi; en büyük sıçrama 5 basamak oldu ve ortalama yükseliş 0,57 basamaktır. Bir beraberliğin galibiyete dönmesi tabloyu kökten bozmuyor, ama sıralamanın çoğu yerinde duran bir kısmının yerini de oynatıyor: sıralama tek bir maça karşı ne tam dayanıklı ne tam kırılgan.

Simülasyonun kendi hatası: kaç sezon yeter

Monte Carlo sonuçları da bir tahmindir ve kendi örnekleme hatası vardır. A takımının şampiyonluk oranı %39,6 çıktı; bu oranın standart hatası √(p(1 − p) / N) formülüyle bulunur. Aynı 10.000 sezon 100'lük ve 1.000'lik gruplara bölünüp oranın gruplar arası dağılımı da hesaplandı.

Sezon sayısıTeorik standart hata (puan)Gruplar arası gözlenen sapma (puan)
1004,95,0
1.0001,51,8
10.0000,49hesaplanamadı (tek grup)

100 sezonluk bir simülasyonda şampiyonluk oranı beş puan kadar oynar; gerçek değer %39,6 iken böyle bir çalıştırma %35'i de %45'i de verebilir. Hata, sezon sayısının karekökü kadar küçülür: sayıyı yüz katına çıkarmak hatayı onda birine indirir. Sayıyı bir milyona çıkarmak bu örnekte 0,49 puanlık hatayı yaklaşık 0,05 puana indirirdi; fakat bu hassasiyetin hiçbir değeri yoktur, çünkü girdideki belirsizlik çok daha büyüktür.

Simülasyonun söylemediği şey

Bu deneyde takımların gücü bilinen bir sabittir. Gerçek bir ligde güç hem bilinmez hem de sezon boyunca yaralanma, transfer ve form nedeniyle değişir. Simülasyon yalnızca "güçler şöyle olsaydı, tablo şu aralıkta biterdi" der. Güçler yanlış girildiğinde sonuçlar da yanlış olur ve yukarıdaki aralıklar gerçeğe göre fazla dar kalır. Takımın gücünü bir reyting olarak tahmin etmenin ne kadar hatalı olduğu Elo reyting sistemi yazısında ölçülmüştür. Sezonun ilk yarısının ikinci yarıyı ne kadar öngördüğünü ise ortalamaya dönüş yazısı aynı türden bir simülasyonla ele alıyor.

Bir simülasyonun çıktısı bir olasılık dağılımıdır ve tek bir sezonun sonucunu açıklamaz. Gerçekleşen bir tablo bu dağılımın bir noktasıdır; o noktadan takımın gücünü ters yönde çıkarmak için de aynı dağılımın genişliği hesaba katılmalıdır. Bu yayın Betroy ile ilişkilidir ve yazıdaki hiçbir sayı bir bahis önerisi ya da gerçek bir ligin tahmini değildir.

Hesabın kuralları ve kaynaklar

Güç dağılımı, ev sahibi avantajı ve puanlama kuralı yukarıda verilen değerlerle sabittir. Sıralama puan, averaj, atılan gol ve küçük bir rastgele ayrım değeriyle yapılır. Betik aynı tohumla aynı tabloyu üretir.

  • Metropolis, N., Ulam, S. (1949). The Monte Carlo method. Journal of the American Statistical Association, 44(247), 335-341.

Sık sorulan sorular

Monte Carlo simülasyonu kaç tekrar gerektirir?
Oranların standart hatası √(p(1 − p) / N) ile küçülür. Yazıdaki örnekte 100 sezonda hata yaklaşık 5 puan, 10.000 sezonda yaklaşık 0,5 puandır.
Simülasyon bir sezonun sonucunu tahmin eder mi?
Hayır. Çıktı bir olasılık dağılımıdır; tek bir sezon bu dağılımın bir noktasıdır. Takım güçleri de kurgusal ve sabit varsayıldığı için sonuç gerçek bir ligin tahmini sayılmaz.
En güçlü takım neden her sezon şampiyon olmuyor?
Yazıdaki kurgusal ligde en güçlü takım sezonların %39,6'sında şampiyon oldu; kalan sezonlarda 380 maçlık şans dalgalanması başka takımları öne çıkardı.
Paylaş:XFacebookWhatsAppLinkedIn

Bu yazıdaki hesap açık muydu?