MathOverflow'da bu sorunu tatmin edici bir cevap olmadan sordum .
Winner adlı kart oyununun basitleştirilmesi olan aşağıdaki iki oyunculu oyunu düşünün . (Aşağıdaki formülasyon, MathOverflow üzerinde Guillaume Brunerie tarafından yapılan bir yorumdan alınmıştır.)
İki A ve B oyuncusu vardır. Her oyuncunun bir dizi kartı vardır ( ), her iki oyuncudan da görülebilir. Oyunun amacı kendi kartlarından kurtulmaktır. İlk oyuncu masada herhangi bir kart oynar, daha sonra diğer oyuncu (kesinlikle) daha büyük bir kart oynamalıdır ve oyunculardan biri oynayamayacak veya geçmeye karar verene kadar devam edecektir. Sonra masadaki kartlar atılır ve diğer oyuncu herhangi bir kart oynayarak tekrar başlar (bunu daha büyük bir kart takip eder). Ve böylece iki oyuncudan biri kartlar bitene ve oyunu kazanana kadar devam eder.
Oyuncular için en iyi stratejiyi bilmek istiyorum (eğer kazanabilirse).
Resmi tanımlama
Gösteren: İlk oyuncu kartlarının bulunduğu oyunun yapılandırması , ikinci oyuncunun kart dizisi ve masadaki en büyük kart , nerede masada kart olmadığı anlamına gelir. Hesaplamak için bir algoritma istiyorum, ilk oyuncunun yapılandırmada kazanan bir stratejisi olup olmadığı .
Resmi olarak, fonksiyonu hesaplamak için bir algoritma istiyorum aşağıdaki gibi tanımlanmıştır:
İzin Vermek , .
fonksiyon
nerede
Yanlış stratejiler
İşte bazı yanlış stratejiler:
- Her zaman en küçük kartı oynayın. İzin Vermek, konfigürasyonda A oyuncusu için kazanan strateji kart oynamak . A oyuncusu kart 1 oynarsa kaybeder.
- Diğer oyuncuda sadece bir kart yoksa en küçük kartı oynayın. Strateji 1'den daha güçlü bir stratejidir, fakat aynı zamanda yanlıştır. Sadece yapılandırmayı düşünün. A oyuncusu strateji 2'yi kullanırsa kaybeder:Böylece A oyuncusu kaybeder.