Я задав цю проблему в MathOverflow , не маючи жодної задовільної відповіді.
Розглянемо наступну гру для двох гравців, яка є спрощенням карткової гри під назвою Winner . (Наступна рецептура була взята з коментаря Гійома Брунері на MathOverflow.)
Є два гравці A і B. Кожен гравець має набір карт (підмножина ), видно у обох гравців. Мета гри - позбутися власних карт. Перший гравець розігрує будь-яку карту на столі, потім інший гравець повинен грати (строго) більшу карту тощо, поки один з гравців не зможе грати або не вирішить пройти. Потім карти на столі відкидаються, а інший гравець починає знову, граючи в будь-яку карту (за якою слідує більша карта). І так далі, поки один з двох гравців не закінчить карти і не виграє гру.
Я хочу знати найкращу стратегію для гравців (якщо він може перемогти).
Формальне визначення
Позначимо через конфігурацію гри, де набір карт першого гравця - , набір карт другого гравця - , а найбільша карта на столі - , де означає, що на столі немає картки. Я хотів би алгоритм обчислення, враховуючи , чи має перший гравець стратегію виграшу в конфігурації .
Формально я хотів би алгоритм обчислення функції визначений наступним чином:
Нехай , .
Функція
де
Неправильні стратегії
Ось кілька неправильних стратегій:
- Завжди грайте в найменшу карту. Нехай , стратегія виграшу гравця A в конфігурації - грати в карту . Якщо гравець A грає на карту 1, він програє.
- Грайте у найменшу карту, якщо інший гравець не має лише однієї карти. Це сильніша стратегія, ніж стратегія 1, але вона також неправильна. Подумайте лише про конфігурацію . Якщо гравець A використовує стратегію 2, він програє: , таким чином гравець програє.