Об удвоении в нардах

Когда надо удваивать? Что делать, если соперник предложил удвоить ставку? Чтобы принять правильное решение в такой ситуации, надо ориентироваться на главную цель. А главная цель - это выигрыш матча (MoneyGame здесь не рассматриваем). Основное понятие при решении этой задачи - Вероятность Выигрыша Матча (Match Winnig Chance, сокращённо MWC). Итак, надо вычислить три значения:

Зная эти три значения, можно легко принять решение:

Если MWC(x2) > MWC(x1) и MWC(+1) > MWC(x1), то надо удваивать.

И если MWC(x2) > MWC(+1), то сопернику в ответ на удвоение лучше сдаться.

Если в матче допускается встречное удвоение, то надо вычислять и учитывать ещё и четвёртое значение: Как же можно вычислить все эти Вероятности Выигрыша Матча? Для начала надо разобраться с шансами на победу игроков перед началом очередной партии матча. От чего они зависят? Они зависят от количества очков, оставшихся каждому из них до победы. А также от уровня их игры. Но мы для упрощения будем считать, что уровень игры соперников одинаковый. Одинаково высокий. Когда игрокам осталось равное количество очков до победы - их шансы равны, у каждого MWC = 0,500 (кто любит проценты - умножайте на 100). Если осталось разное количество очков до победы, то значение MWC надо брать из заранее заготовленной таблицы. Строка - сколько очков до победы осталось нам (обозначим буквой R). Столбец - сколько очков до победы осталось сопернику (обозначим буквой C).
В частности, для Nardegammon с правилом Кроуфорда эта таблица выглядит так:

 Очков осталось сопернику до победы
 12345678910111213
10,5000,6970,7670,8320,8640,9040,9240,9450,9560,9680,9750,9820,986
20,3030,5000,6090,6960,7650,8230,8640,8960,9200,9400,9540,9650,973
30,2330,3910,5000,5860,6690,7350,7870,830 0,8640,8930,9150,9330,947
40,1680,3040,4140,5000,5900,6590,7220,7710,8140,8490,8780,9020,922
50,1360,2350,3310,4100,5000,5740,6410,696 0,7470,7890,8250,8560,882
60,0960,1770,2650,3410,4260,5000,5700,6290,6850,7330,7750,8110,842
70,0760,1360,2130,278 0,3590,430 0,5000,561 0,6200,6720,7190,7600,796
80,0550,1040,1700,2290,3040,3710,4390,5000,5610,6140,6650,7090,750
90,0440,0800,1360,1860,2530,3150,3800,4390,5000,5550,6080,6550,699
100,0320,0600,1070,1510,2110,2670,3280,3860,4450,5000,5540,6030,649
110,0250,0460,0850,1220,1750,2250,2810,3350,3920,4460,5000,5500,598
120,0180,0350,0670,0980,1440,1890,2400,2910,3450,3970,4500,5000,549
130,0140,0270,0530,0780,1180,1580,2040,2500,3010,3510,4020,4510,500

Теперь нам известно, как вычислить MWC в случае сдачи соперника в ответ на удвоение. Например, нам осталось до победы 7 очков, а сопернику 9. Куб сейчас у нас и на нём множитель M=2. Если мы предложим сопернику удвоение, а он сдастся, то у нас отанется до победы 5 очков. Смотрим в таблице ряд R=5, столбец C=9 - наши шансы на выигрыш матча станут равны T[R:C]=0,747.

А вот чтобы вычислить MWC в случае продолжения партии, потребуется прикинуть вероятности всех возможных исходов партии из текущей позиции - выигрыш с марсом P+2, выигрыш без марса P+1, проигрыш без марса P-1, проигрыш с марсом P-2. Если мы смогли это сделать, то вероятность выигрыша матча вычисляется так:

MWC(xM) = P+2 * T[R-2M : C] + P+1 * T[R-M : C] + P-1 * T[R : C-M]+ P-2 * T[R : C-2M]

Сложно? А кто говорил, что в нардах всё просто?
Кстати, если в матче не применяется правило Кроуфорда, либо одному из игроков осталось всего одно очко до победы, то понадобится другая таблица:

Nardegammon без (после применения) правила Кроуфорда
 Очков осталось сопернику до победы
 12345678910111213
10,5000,5430,6960,7370,8270,8540,8990,9170,9420,9520,9660,9730,981
20,4570,5000,6240,6790,7670,8090,8570,8840,9140,9310,9480,9590,969
30,3040,3760,5000,5540,6600,7050,7740,8060,8530,8750,9060,9210,940
40,2630,3210,4460,5000,6060,6560,7260,7620,8120,8410,8740,8940,917
50,1730,2330,3400,3940,5000,5570,6350,6800,7400,7750,8180,8440,875
60,1460,1910,2950,3440,4430,5000,5750,6230,6840,7250,7720,8030,837
70,1010,1430,2260,2740,3650,4250,5000,5530,6170,6630,7140,7510,791
80,0830,1160,1940,2380,3200,3770,4470,5000,5630,6110,6640,7040,746
90,0580,0860,1470,1880,2600,3160,3830,4370,5000,5510,6050,6490,695
100,0480,0690,1250,1590,2250,2750,3370,3890,4490,5000,5550,6000,648
110,0340,0520,0940,1260,1820,2280,2860,3360,3950,4450,5000,5470,596
120,0270,0410,0790,1060,1560,1970,2490,2960,3510,4000,4530,5000,549
130,0190,0310,0600,0830,1250,1630,2090,2540,3050,3520,4040,4510,500

Каким образом мастера во время игры в уме вычисляют все эти формулы? Не знаю. Наверное, у них мозг хорошо развит :-)


И это ещё не все сложности! Всё вышеописанное является самым главным шагом в сторону верной стратегии удвоения. Более того, многие этим и ограничиваются. Но на самом деле эта стратегия (назовём её "рискованная") абсолютна верна только в случае, если соперник после принятия куба уже не будет нуждаться в удвоении. Т.е. выиграет весь матч даже в случае победы без марса. В противном случае он получает возможность при возникновении благоприятной ситуации в дальнейшем розыгрыше этой же партии применить куб, тем самым внося неучтёный в этих формулах фактор. Который увеличивает его MWC и уменьшает наш.

Доказать это просто. Возьмём двух равных по силе игроков. Один будет использовать описанную выше "рискованную" стратегию удвоения. А второй будет удваивать только тогда, когда сопернику выгодней сдаться, чем принять куб. Назовём эту стратегию "осторожная". Заставим этих игроков сыграть между собой сотни тысяч матчей до 2 очков, потом до 3 очков и т.д... В таблице - процент матчей, выигранных "острожным" игроком у "рискованного".

 2357911 131517
"осторожная" против "рискованной" 49,4%51,2%51,7%52,7%53,7%54,8% 55,9%56,8%57,5%

Но это вовсе не означает, что "осторожная" стратегия самая лучшая. Лучше всего учитывать тот самый "неучтённый" фактор, который возникает при возможности у соперника применить против нас куб удвоения. Проблема в том, что абсолютно точно учесть его ну очень сложно. Поэтому программа LogasAI применяет некую "пороговую" стратегию удвоения. Которая в целом следует "рискованной" стратегии, но делает некоторые эмпирические поправки на этот "неучтённый фактор" при принятии решения об удвоении. Результат проверки такой стратегии против "рискованной" и "осторожной" можно увидеть в следующей таблице.

 2357911 131517
"пороговая" против "рискованной" 50,0%50,0%52,0%53,0%54,1%55,1% 55,8%56,5%57,2%
"пороговая" против "осторожной" 50,6%50,6%50,7%51,1%51,3%51,6% 51,8%51,9%52,1%

А вывод из этого такой:
Если удвоение мало увеличивает наши шансы на выигрыш матча, а соперник потом может удвоить против нас, то удваивать не надо.
И наоборот, если сдача не намного хуже, чем приём куба, и потом ещё есть возможность удвоить, то сдаваться не надо.