Если два идентичных компьютера с идентичным ПО будут играть в шахматы, выиграет ли тот, который будет ходить первым?

1401
4
1
3 декабря
15:59
декабрь
2015

Вообще говоря, совсем не обязательно. Число позиций и возможных ходов настолько велико, что просчитать конец игры невозможно. (Это число называется числом Шеннона, и примерно равняется 10^43).

Как вообще компьютерная программа "играет в шахматы"?

1)С помощью функции активации программа оценивает позицию и перевес какой-либо стороны

2)Строится дерево возможных ходов

3)Осуществляется "умный" анализ, который просчитывает только перспективные ветки.

Когда-то я играла в шахматы и пользовалась подобными компьютерными программами для разбора партий. Могу сказать, что хотя компьютер гораздо лучше и дальше просчитывает возможные комбинации, он не обладает гибкостью мышления, присущей человеку( даже не самому блестящему шахматисту). Иногда он может, например, неправильно оценить тактические приёмы и жертвы. А в партии с Каспаровым компьютер "проглядел" вечный шах, ведущий к ничье в выигрышной позиции. В другой партии с ним же программа "пожадничала" и ухудшила свою позицию.

Применимо к конкретному вопросу, один компьютер может просмотреть какой-то возможный исход данного хода, в то время как другой увидит и воспользуется ситуацией.

15
0
декабрь
2015

В зависимости от алгоритма шахматной программы итоги могут быть самыми разными.

В случае детерменированного (без неизвестностей) алгоритма, результат, теоретически, всегда будет повторяться. Либо всегда выигрывают белые, либо всегда - чёрные, либо - всегда ничья. При этом каждая следующая партия будет точной копией предыдущей (те же самые ходы).

Понятно, почему могут всегда выигрывать белые. У них, вроде как, преимущество на старте.

Почему всегда могут выигрывать чёрные? Потому что в партии может наступить такой момент, что, когда белые просчитывали свой ход, они ещё не знали, как они походят. Они оценивают партию с текущей позиции. После того, как белые сделали ход, ситуация на доске изменилась, и это может подсказать чёрным верный ход.

Однако, может оказаться, что даже в случае детерменированных алгоритмов итоги партий могут быть разными, если вмешается фактор времени. Например, хорошие шахматные программы (как и хорошие игроки в шахматы) продолжают обдумывать ситуацию даже во время чужого хода. Если по какой-то причине ответ от другой программы придёт всего лишь на одну микросекунду позже (такое легко может быть), программа может успеть додуматься до чего-то такого, до чего не додумалась в предыдущий раз, и это может изменить всю дальнейшую игру.

Другие варианты.

В случае, если алгоритмы случайным образом выбирают ход из равновыигрышных (по их мнению) вариантов, исход партии будет каждый раз неизвестен заранее (либо выигрыш, либо проигрыш, либо ничья). Хотя, возможно, будет намечаться склонность к какому-то конкретному исходу (например, 50% вероятности выигрыша белых, 30% - черных, 20% - ничья).

В случае, если алгоритмы самообучаются в процессе игр, итоги партий станут ещё более непредсказуемыми. Например, поначалу чёрные могут всегда проигрывать, но через несколько игр сумеют нащупать те неверные ходы, которые приводили к их поражению, и научатся избегать проигрыша.

6
0
декабрь
2015

У меня нет никакой теории на этот счет, но есть эксперимент, правда компьютер там был один. Я в компьютере смеха ради давал нескольким программам типа Chessmaster задание "компьютер против компьютера", оба виртуальных игрока одинаковые по параметрам. Так вот, если выбрать параметры "атакующего стиля", то выигрывал тот, который ходил первым, а если "средние" или "оборонительные", то ничья.

4
0
показать ещё 2 ответа
Если вы знаете ответ на этот вопрос и можете аргументированно его обосновать, не стесняйтесь высказаться
Ответить самому
Выбрать эксперта