Комментарии 17
Есть интересная идея регулировать агрессивность движка изменением процента ничей в партиях использующихся для обучения. Протестировать не удалось, так как меня метод Texel не завелся. Так и не смог разобраться почему :(
Жаль что автор Giraffe оставил свой проект.
Но, наверное, программу придётся слегка переделать — она должна научиться отличать оценку за себя от оценки за противника. Для более миролюбивой игры недостаточно меньше ценить атаку на короля — надо меньше ценить именно свою атаку, а за противника по-прежнему смотреть все угрозы и правильно от них защищаться.
Я не очень понял, почему в тексте и в таблице был сделан вывод, что оценка материала не изменилась, когда из графика видно, что очень даже изменилась — от довольно причудливых значений (где это видано, чтобы за ферзя давали 12 пешек?) к классическим (9, 5 и 3 пешки за ферзя, ладью и легкую фигуру соответственно).
12 пешек за ферзя — вполне нормальное значение, оно используется не только в GreKo. Важно понимать, что это только один из членов оценки, другие связанные с ферзём и пешками признаки вносят существенные поправки.
Похоже ее зовут «42» и это герой комикса Kiwi Blitz, появляется в четвертой части http://www.kiwiblitz.com/comic/archive
А распространение на игру с другими противниками — вполне удачно, судя по приведённым в статье результатам тестов. Подождём ещё, как программа себя покажет в классическом контроле, например, в рейтинге CCRL.
Если атака не приносит позиционных или материальных преимуществ за 10-15 ходов (типичная глубина поиска современного движка) — это сомнительная атака.
Такую "лихую" тактику компьютеры обычно зевают из-за агрессивных отсечений, которые оправдывают себя с точки зрения общей силы игры. Просто потому, что они даже не проверят ход, а не потому, что они не способны его оценить.
Наверное это можно учесть "постфактум". Если "живой" игрок сделал ряд "глупых" или "невыразительных", "невразумительных" ходов а потом, вдруг, как с цепи сорвался, значит, компьютеру (или просто начал получать "необъяснимое", "невыводимое", с точки зрения компьютера, преимущество), пора запускать отдельный поток или процесс, в котором нужно будет искать, где игрок его обманул и в чем суть его стратегии а также, разгадав хитрость, определить рецепт ликвидации "нечестного" преимущества и "жестокого наказания" для хитреца.
Описанное выше подойдёт для атаки и инициативе а вот применяемую "абстракцию" придется устанавливать исходя из самой общей стратегии поведения игроков при реализации той или иной абстракции — здесь, видимо, пригодятся статистика и машобучение.
Ну и разумеется, используемые подходы в этих специальных случаях будут сильно отличаться от общих принципов игры.
Самообучение шахматной программы