Шахматный движок на ассемблере: Deep_asmFish

Сделал на github ответвление шахматного движка asmFish (Stockfish на ассемблере), в котором урезал некоторые эвристики по аналогии с движком DeepFish MZ. Его особенностью является глубина анализа при наивысшей скорости прохода в глубину дерева поиска. В оригинальной версии движок работает более быстро, но и упускает из виду, например, выигрыш через цугцванг или жертву ферзя.

https://github.com/covrom/Deep_asmFish



Удалены шаги поиска 6,8,9 (Razoring, Null move, Probcut).
Не удалены 7, 10 and 13 (Futility pruning, Internal iterative deepening, Pruning at shallow depth).
Deep_asmFish находит кратчайший мат за 20 секунд на 1 ядре i5-3570 в такой позиции:



5kB1/3p1P2/7K/2Pp1P1P/p6p/4P3/7P/8 w - - 0 1

Правильный ход Kg6 и кратчайшая линия до мата за 21 ход (1.Kg6 a3 2.h6 a2 3.h7 a1=Q 4.h8=Q Qxh8 5.f6 d4 6.c6 dxc6 7.exd4 h3 8.Kg5 Qxg8+ 9.fxg8=Q+ Kxg8 10.Kg6 Kf8 11.f7 Ke7 12.Kg7 Kd7 13.f8=Q Ke6 14.Qf7+ Kd6 15.Kf6 c5 16.Qe6+ Kc7 17.dxc5 Kb7 18.Qb6+ Ka8 19.Qb5 Ka7 20.c6 Ka8 21.Qb7#).
Для сравнения, Komodo 10.2, Houdini 5 Pro и Stockfish 8 не находят мата в этой позиции.

Популярные сообщения из этого блога

Показатели эффективности персонала в сфере услуг

Д. Кейрси. ТЕМПЕРАМЕНТ И ХАРАКТЕР

P2M: ЦЕННОСТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД К УПРАВЛЕНИЮ ИННОВАЦИОННЫМИ ПРОГРАММАМИ И ПРОЕКТАМИ