ИИ против ИИ в 100-клеточные шахматы | Rust, WebAssembly и новая фигура «Витязь

Аватар автора
От 3D до печати
Привет! В этом стриме мы запустили двух искусственных интеллектов друг против друга в необычные шахматы — на доске 10×10 с новой фигурой «Витязь». Пока ИИ думают и сражаются, я расскажу: Что такое 100-клеточные шахматы? Это молдавский вариант (автор Тимофеев О.Л.) с нашими доработками: доска 10×10, новые вертикали i, j, добавлены две дополнительные пешки и фигура «Витязь», которая ходит как слон ИЛИ как конь. Игра становится динамичнее и сложнее для просчёта. Почему движок на Rust? Rust даёт скорость C++ и безопасность памяти, а также легко компилируется в WebAssembly для работы в браузере почти с нативной производительностью. Как победили зависания? Вынесли тяжёлые вычисления в отдельный поток — Web Worker. Теперь интерфейс не блокируется, пока ИИ думает. Что внутри движка? Минимакс с альфа-бета отсечением, сортировка ходов (взятия, шахи, превращения), транспозиционная таблица (кэш на 32 МБ) для ускорения поиска. Как останавливаемся по времени? Встроили проверку времени прямо в рекурсию — если лимит исчерпан, прерываем поиск, но сравниваем лучший ход с предыдущей глубины, чтобы не потерять качество. Почему витязь стоит 720 очков? Он дороже слона (330) и коня (320) по отдельности, но дешевле их суммы, потому что за ход можно сделать только один тип движения. На практике витязь очень коварен и трудно блокируется. Стоит ли увеличить правило 50 ходов? На большой доске маневров больше, возможно, 50 ходов без взятия — мало, но пока оставим классику, посмотрим, как сложится...

0/0


0/0

0/0

0/0

Скачать популярное видео

Популярное видео

0/0