범용 체스 인터페이스

다른 이름: UCI

그래픽 인터페이스가 체스 엔진을 제어하고 조회할 수 있게 하는 텍스트 프로토콜.

설명

UCI는 Universal Chess Interface의 약자입니다. 사용자 인터페이스가 과 대화하는 방식을 정하는 공개 프로토콜입니다. 그래픽 인터페이스는 체스판, 시계, 조작부를 보여 주고 엔진은 수와 평가를 계산합니다. UCI를 쓰면 서로 다른 팀이 만든 둘을 결합할 수 있습니다.

전형적인 대화

  1. 인터페이스가 엔진을 시작하고 uci를 보냅니다.
  2. 엔진은 이름, 설정 가능한 옵션, uciok로 응답합니다.
  3. 인터페이스는 옵션을 바꾸고 isready로 엔진 준비가 끝났는지 확인할 수 있습니다.
  4. 인터페이스는 초기 포지션 또는 뒤에 필요하면 수순을 붙여 position을 보냅니다.
  5. go 명령은 시간, 깊이 또는 다른 조건의 한계로 탐색을 시작합니다.
  6. 계산 중 엔진은 info 줄을 보낼 수 있으며, 끝나면 선택한 수와 함께 bestmove를 보냅니다.

UCI로 보내는 수는 보통 출발 칸과 도착 칸으로 씁니다. 예를 들어 e2e4이고, 승격은 e7e8q처럼 선택 기물을 붙입니다. 이 형식은 게임을 읽을 때 보통 쓰는 과 다릅니다.

UCI는 통신 언어를 정의할 뿐 엔진의 강함이나 인터페이스 모양을 정하지 않습니다. 과도 다릅니다. 둘은 비슷한 문제를 풀지만 어댑터 없이는 명령을 서로 바꿔 쓸 수 없습니다.

자주 혼동하는 개념

UCI와 엔진

UCI가 수를 계산하는 것은 아닙니다. 호환 엔진에 계산을 요청하게 하는 프로토콜입니다.

UCI와 CECP

둘은 다른 프로토콜입니다. 한쪽과 호환되는 엔진이 다른 쪽을 이해한다고 보장할 수 없습니다.

용어 보기

출처

관련 용어

© 2026 MindZug