프로젝트 소개

OptiChess는 알고리즘 연구를 위한 실험용 체스 엔진 및 분석 도구입니다. GrogrosZero를 중심으로 구성되어 있으며, 이는 UCT 스타일 노드 선택과 알파-베타 가지치기, 통합 퀴에센스 검색, 승/무/패(WDL) 통계 평가를 결합한 하이브리드 탐색 시스템입니다. 주요 기술 기능은 다음과 같습니다: - 메모리 관리: 힙 할당을 핫 경로에서 제거하기 위해 Node 및 Board 객체에 대한 사전 할당 풀을 사용하는 경계가 있는 zero-allocation 탐색. - 엔진 아키텍처: Zobrist 키 기반 전치 표, 31개의 가중 항을 가진 평가기, 그리고 선택적인 실험적 신경망 평가 포함. - 분석 GUI: raylib으로 구축되어 후보 이동 화살표, 평가 그래프, 게임 트리 변형을 제공하는 시각적 보드 제공. - 화면 바인딩: Windows 전용 기능으로, 화면의 픽셀 색상을 분석하여 체스 판을 직접 읽어 브라우저 기반 게임의 실시간 분석을 가능하게 함. - 테스트 스위트: Perft 이동 생성 검증, 기준 위치 대비 평가 정확도, 전술 퍼즐 풀이를 다루는 인터랙티브 스위트. 이 프로젝트는 Windows x64용으로 C++20과 CMake로 개발되었으며, UCI 준수 엔진이 아니며 경쟁 플레이보다는 연구 목적으로 의도되었습니다.