В конце 2017 года проект AlphaZero произвел фурор в мире компьютерных шахмат. Эта новая программа следовала совершенно другому подходу, чем шахматные движки, которые разрабатывались стандартными методами в течение многих лет. AlphaZero поставил под сомнение многие правила и принципы, которые годами считались необходимыми для разработки программ. Эта программа просто знает правила игры и использует сложные алгоритмы, касающиеся способности к обучению. Игровая сила движка определяется исключительно на основе партий, которые он сам играл и анализировал!
AlphaZero обходится без освоения запрограммированных специализированных знаний и после всего лишь нескольких часов обучения он смог сравниться с лучшими специализированными программами. К сожалению, AlphaZero является чисто исследовательским проектом и не доступен для заинтересованных шахматистов.
После успеха AlphaZero, привлекающего внимание, был основан проект с открытым исходным кодом
Leela Chess Zero, или
Lc0 (LCZero). Цель, которую он поставил, состояла в том, чтобы предложить пользователям, которые интересуются шахматами, движок, который работает с методами, подобными тем, которые стоят за AlphaZero. Достигнутые к настоящему времени результаты являются чрезвычайно многообещающими, и последняя версия Lc0 является частью пакета Fritz.
Нейронный движок
Fat Fritz основан на проекте с открытым исходным кодом LCZero и предлагает множество подобных процедур. Однако нейронная сеть не была обучена / разработана партиям против себя (подход «Zero»). Сила игры Fat Fritz основана на анализе партий из Мега-базы, компьютерных партий и баз данных эндшпиля. Результаты, полученные нами внутри других ведущих программ, очень многообещающие, и мы гордимся тем, что можем предложить нашим пользователям эту сильную и концептуально новую программу.
Лучший способ понять разницу между Fat Fritz и традиционными движками - это посмотреть на разработку движка. Таким образом, традиционные движки изучают на очень ранней стадии (как и большинство начинающих) каковы значения различных фигур. Fat Fritz начал изучать шахматы без этой информации. Вместо этого его подпитывали буквально миллиарды различных позиций, которые он изучал, чтобы выработать на этом основании свое собственное понимание шахмат. Таким образом, Fat Fritz, в отличие от классических шахматных программ, не работает, исходя из материальных соображений, и не может и не должен этого делать. Движок оценивает позицию исключительно по коэффициентам выигрыша или проигрыша. Результатом этого является то, что нет мелкого подсчета материала, он беспристрастно играет по позиции.
Это больше, чем просто интересная деталь, и имеет большое практическое значение. Так как в целом ряде позиций традиционный движок не видит способа улучшить позицию для обеих сторон и поэтому оценивает ее, как абсолютно ровную со значением 0,00. Fat Fritz, возможно, также оценивает такие позиции, как равенство, но движок также видит, какие из этих позиций чаще других приводят к победному результату. В настоящее время начальные анализы редко приводят непосредственно к победе над хорошо подготовленным противником, поэтому полезно знать, какие ходы или какие позиции предоставляют противнику наибольшие шансы на ошибку.
Движок работает с вероятностью выигрыша вместо оценки позиций! Таким образом, в оценке фактор, который учитывается, прежде всего, - это вероятность выигрыша. Чтобы добиться этого, движок воспроизводит тысячи партий со скоростью от нескольких сотен до нескольких десятков тысяч в секунду (независимо от того, какая версия). Одна особенность Fat Fritz состоит в том, что движок также использует ресурсы высокопроизводительных процессоров видеокарты! Это приводит к явному ускорению производительности! Fat Fritz поддерживает режим RTX, а также режим CUDA, который на момент написания поддерживается исключительно графическими картами NVIDIA.
Из описания становится ясно, что Fat Fritz требуется очень высокая производительность видеокарты, например,
NVIDIA RTX 2060, для достижения производительности, на которую он способен. Без соответствующего GPU (графического процессора) программа может быть замедлена в 1000 раз, что необходимо учитывать при экспериментировании с движком. Поэтому Fat Fritz можно использовать на чистом CPU (главном процессоре), но ничего похожего на его мощь на быстром GPU достичь невозможно.
Совет: всякий раз, когда вы взвешиваете необходимость приобретения карты NVIDIA, вы должны учитывать, обеспечивает ли ваша сеть достаточные резервы для желаемой производительности. В компактных и энергосберегающих настольных ПК возможно отсутствие разъемов для подключения таких видеокарт. Это необходимо прояснить перед покупкой графического процессора. Готовые игровые компьютеры, например, с процессором AMD Ryzen и графической картой RTX, можно приобрести в настоящий момент примерно за 1100 евро.
На тестовом компьютере с RTX 2080 в режиме RTX скорость составляет около 20 тысяч позиций в секунду, в режиме CUDA прибл. 45% от этого. Старые видеокарты достигают явно меньших значений, только две видеокарты NVIDIA поддерживают два упомянутых режима: CUDA или RTX!