Структура программы Ифрит

на главную страницу

В Ифрите можно выделить следующие составные части:
1 UCI протокол.
2 Генератор избыточных ходов. Принимает позицию и выдает список всевозможных ходов из данной позиции. Не учитывает шахи.
3 Реализатор ходов. Принимает ход и реализует его на доске. Он делает как прямые ходы, так и возврат хода.
4 Детектор шахов проверяет позицию, выданную реализатором ходов. Если позиция не корректна, то об этом сообщается и реализатор возвращает ход. На данный момент детектор состоит из нескольких функций и смотрит отдельно атаку на короля ,и битые поля при рокировке.
5 Генератор вариантов. В данный момент это полный перебор с альфа-бета отсечением. В нем же реализуем вывод главной линии переменной длины.
6 Оценщик позиции. Получаем позицию и выдаем ее оценку.