Как же человеку удается соревноваться с компьютером? И за счет чего компьютеры все-таки обыгрывают чемпионов? Дело в том, что люди не только просчитывают варианты. Если бы это было так, игре в шахматы можно было бы научиться очень быстро, а выигрывал бы тот, кто быстрее считает в уме. Шахматист еще и оценивает, как бы видит ситуацию на доске. И это умение он приобретает в процессе научения.
Следуя примеру человека, современные шахматные программы, кроме просчета ходов и ответов противника, еще и оценивают позицию. Для этого используется так называемая “оценочная функция”. Она рассчитывается в соответствии с правилами, взятыми из шахматных учебников, или подсказанными опытными шахматистами.
Например:
– пара слонов – это больше чем “один слон и еще один слон”;
– пешки выстроились цепью – это хорошо. Или наоборот – “висящая” пешка – это плохо;
– если цепь пешек защищает короля – это очевидный плюс позиции;
– еще один жирный плюс – пешка, которая угрожает пройти в ферзи;
Подобных правил сотни, если не тысячи. Люди их не всегда осознают, часто пользуются автоматически. Кстати, понять, какими правилами пользуется человек при поиске решения – зачастую главная трудность создания не только шахматных программ, а вообще большинства программ, имитирующих человеческую деятельность41. Машина оценивает соответствие шахматным правилам численными коэффициентами, коэффициенты настраиваются по результатам тренировочных партий и сводятся в эту самую оценочную функцию. Чем выше эта оценка, тем перспективнее рассматриваемый ход.
Используя все эти правила, как компьютер, так и человек-шахматист, как-бы выстраивает шахматную армию – этакую военную машину. Разумно организованная армия умеет хорошо атаковать и защищаться. Два слона могут атаковать любое поле, а один – только черные или только белые диагонали. Поэтому, если на доске пара слонов, оценочная функция увеличивается на какой-то процент. “Висящую” пешку тяжелее защитить – коэффициент снижается. Король должен быть надежно спрятан. Атакующие фигуры – иметь пространство для маневра. Все это влияет на качество позиции. Существуют также правила, на основании которых можно регулировать глубину поиска. Например, те “ветки”, в которых просматривается шах или взятие ценной фигуры, нужно просмотреть поглубже, естественно за счет сокращения глубины поиска в “спокойных” ветках.
Что очень