Birkaç yıl önce, bir geliştirici Blackjack oyununda destenin mevcut bileşimine göre her elin beklenen değerini (EV) ve optimal stratejisini hesaplamak amacıyla bir Excel elektronik tablosu oluşturdu. Bu merak projesi, çevrimiçi kumarhanelerin "advantage player"ları tespit etmek için kullandığı yazılımlara benzer bir yapıya sahip olduğunu fark ettiğinde daha ilginç bir hal aldı. Şimdi ise, bu projenin web tabanlı versiyonu olan Advantage Player, kart saymanın ardındaki matematiği herkesin anlaması için erişime açıldı.
Orijinal Excel tablosu, olasılık teorisi ve kombinatorik üzerine kuruluydu. Herhangi bir deste durumu için (her kart türünden kalan kart sayısı), Hi-Lo sistemiyle running count ve true count hesaplayabiliyor, vurma, durma, ikiye katlama ve bölme eylemleri için kesin kazanma olasılıklarını belirleyebiliyor ve mevcut deste bileşimine göre eksiksiz strateji tabloları oluşturabiliyordu. Ancak, hipergeometrik dağılımlara dayalı hücre bazlı yeniden hesaplamalar nedeniyle yavaş ve kullanışsızdı. Kumarhaneler de oyuncuların bahis korelasyonlarını, strateji sapmalarını ve oturum modellerini izleyerek yetenekli kart sayıcıları tespit etmek için benzer yazılımlar kullanır; bu, oyuncular ve kumarhaneler arasında sürekli bir rekabettir.
Bu sistemi web'e taşımak, sadece Excel formüllerini Python'a çevirmekten çok daha fazlasını gerektirdi. En büyük zorluklar, milisaniyeler içinde yanıt vermesi gereken gerçek zamanlı performans ve sonsuz deste varsayımına dayalı temel stratejiden farklı olarak, kalan kartların tam etkisini hesaba katan bileşime bağlı stratejiydi. Geliştirici, performans için olasılık matrislerini önceden hesaplama, ara sonuçları önbelleğe alma ve numpy ile vektörel hesaplamalar kullanma gibi çözümler uyguladı. Bileşime bağlı strateji için ise, her olası sonraki kartı, gerçek kalan olasılıklarına göre ağırlıklandırarak özyinelemeli olarak değerlendiren mini bir simülasyon motoru geliştirdi. Bu sayede, her kart dağıtıldığında <50ms altında yanıt süresi elde edildi.
Bu proje, Blackjack'teki kart sayma stratejilerinin altında yatan karmaşık matematiği ve çevrimiçi kumarhanelerin bu tür avantajlı oyuncuları nasıl tespit ettiğini gözler önüne seriyor.