일전에 [GoReviewPartner로 기보 분석 및 인공지능과 대국하기.]란 글을 적었던 바 있는데, 0.14버전으로 업데이트되며 변경점이 있어, 바뀐 부분을 소개할 겸해서 다시 인공지능 바둑 프로그램을 사용하는 방법을 설명합니다.



1. 다운로드


우선 공식 사이트(http://yuntingdian.com/goreviewpartner/)에 접속해서 프로그램을 다운로드해야 합니다.


다운로드 파일은 같은 GoReviewPartner(GRP)임에도 사용하는 인공지능에 따라 여럿으로 나눠서 배포하고 있습니다. 소프트웨어 자체는 똑같지만 기본 탑재되는 인공지능에 따라 차이를 둔 것인데요. 이미 인공지능 프로그램을 가지고 있고, 업데이트 관리가 가능한 분들은 가장 밑에 있는 No bot 버전을 받으시면 되고, 가지고 있는 인공지능 바둑이 없는 분들은 원하시는 인공지능이 내장된 것을 받으면 됩니다.


릴라제로나 엘프 오픈고를 사용하실 분들은 해당 인공지능이 내장되어 있는 버전을 받아 쓰는 것이 릴라제로 깔고, 엘프 오픈고 해시 파일 별도로 다운로드 받고 하는 절차를 생략할 수 있어 편할 수 있으나, 인공지능이 신규 버전으로 업데이트될 경우 즉각즉각 개선된 인공지능을 사용하지 못하고 GRP 개발자가 제공해주는 업데이트에 의존해야 하는 단점이 있습니다.


여기서는 본문 설명 편의를 위해 GRP 내장 인공지능(릴라제로, 엘프 오픈고 버전)을 다운로드받아 사용하는 방향으로 진행합니다. 인공지능을 직접 관리/업데이트하고자 하시는 분들은 본문 상단에 링크되어 있는 기존 GRP 관련 글을 참고하시거나, 제 블로그 우측 검색창에 '릴라제로'로 검색해 나오는 글들을 밑에서부터 순차적으로 읽어보시면 되겠습니다.



인공지능 프로그램 및 네트워크 해시 관리가 가능한 분들은 No bot 버전을, 아닌 분들은 각 인공지능 내장된 버전을 다운로드하세요!




2. 실행 / 언어변경


다운로드 받은 파일을 적절한 폴더에 압축 풀어주신 다음, GoReviewPartner.exe 파일을 실행해주시면 아래와 같은 화면이 나옵니다. 검은 화면(명령프롬프트창)은 인공지능 동작 메시지가 출력되는 창으로, 닫아버리면 프로그램이 종료되니 계속 열린 상태로 놔두셔야 합니다.


우선 언어부터 한국어로 변경하고 설명 들어가겠습니다. Settings에 들어가 상단 Language 부분을 클릭해 한국어로 변경한 다음, 하단의 Save settings 버튼을 눌러 저장해주세요. 그 다음 프로그램을 종료한 다음 재실행해주시면 한국어 표기로 변경된 화면을 보실 수 있습니다. (저장즉시 바로 언어 변경되는 것이 아니라 설정 창을 닫고, 프로그램을 종료했다가 재실행해야 됩니다.)



동시에 두 창이 열립니다.





3. 재실행 / 인공지능 설정


언어 변경 설정이 잘 되었다면 한국어로 변경된 화면에 보일 겁니다. 다시 설정에 들어가서 이번엔 좌측 하단에 있는 Leela Zero로 들어갑니다. 엘프 오픈고를 받은 분들도 Leela Zero로 들어가야 하는데, 이는 엘프 오픈고가 릴라제로 구동 환경에서 돌아가도록 네트워크 해시 파일을 변환시킨 버전이기 때문입니다. (관련 설명: http://www.yuhling.net/1196)



릴라제로(엘프 오픈고) 설정 화면



사실 이것저것 손대기 귀찮고 피곤하고 두려운 분들은 설정에서 딱히 무언가를 건드리실 필요는 없습니다만, 좀더 본격적으로 강력한 인공지능을 사용하실 분들은 참고해보세요.


파라미터 부분을 마우스 클릭해 오른쪽으로 쭉 드래그를 하면 우측에 잘린 내용이 보이게 됩니다. '느린 프로파일'은 여기에 -v 10000이, '빠른 프로파일'은 -v 1600 이 기본 설정으로 들어가 있는데 이는 인공지능이 생각할 시간(정확히는 연산량)을 그만큼 준다는 의미입니다. 숫자가 클수록 더욱 오랜 시간 많은 연산을 합니다. 릴라제로 최신 버전이나 엘프 오픈고는 워낙 강력한 인공지능이라 '빠른 프로파일'을 좀더 짧게 설정해도 무관합니다. 500만 설정해도 어지간한 아마추어 바둑인은 인공지능을 상대하기 힘들 겁니다. (※ 컴퓨터 사양에 따른 성능 차이가 큽니다.)


컴퓨터의 CPU 스레드를 최대로 활용하고자 하는 분들은 파라미터 맨 뒤에 스페이스로 한 칸 띄우고 '-t 숫자'를 입력하시면 됩니다. 스레드 8개인 CPU라면 8을, 16스레드라면 16을 입력하시면 됩니다.


컴퓨터에 그래픽카드가 복수 설치되어 있고, 이를 전부 인공지능 연산에 활용하고자 한다면 스레드 설정과 마찬가지로 파라미터 맨 뒤에 한 칸을 띄우고 '--gpu 0 --gpu 1' 처럼 입력해주시면 되는데, 각 그래픽카드의 할당 번호는 GRP에서 확인하기 힘들다는 문제가 있어서 여기서는 설명드리기가 힘들겠습니다. SABAKI(사바키) 사용하는 분들은 사바키 설정 글(http://www.yuhling.net/1191)의 하단 댓글을 참고로 진행해주세요.


인공지능이 패배를 선언하게 하는 옵션도 추가할 수 있습니다. 인공지능이 지정된 승리 가능성 퍼센트 이하로 떨어질 경우 끝까지 두지 않고 패배를 선언하고 게임을 종료하게 하는 기능인데, 일반 아마추어들에겐 별 인연이 없는 기능입니다만(...), 파라미터 맨 뒤에 한 칸을 띄우고 '-r 숫자'를 입력하시면 됩니다. 숫자는 승률 퍼센트를 의미합니다. 5~20 범위가 적절합니다.


설정이 끝나셨으면 '설정 저장'을 누르고 설정 창을 닫습니다.




4. 인공지능과의 대국 / 활용


본격적으로 인공지능을 사용해 대국하거나 분석하는 방법을 설명합니다.


메인 화면에서 '실시간 분석 시작'을 누르면 아래 그림 오른쪽과 같은 대국 설정창이 나타납니다. 



대국 설정 방법. 인공지능 플레이어 선택하고 시작!



위에서부터 하나씩 설명하면...


- 분석에 사용할 인공지능 : 대국 또는 기보 나열 후 해당 기보를 복기해줄 인공지능을 선택하는 항목입니다. 여기에는 '느린 프로파일'이 기본적으로 설정되어 있는데, 딱히 건드릴 필요 없습니다. 설정에서 언급했던 오랫동안 생각하는 인공지능이 복기를 해줍니다.


- 흑/백 플레이어 : 혼자 두기를 하거나 기보를 나열해보고자 한다면 양쪽 모두 사람으로 설정하고 두면 됩니다. 인공지능과 두고자 한다면 흑/백 중 하나를 'LeelaZero (빠른 프로파일)'로 선택해주시면 됩니다. 여기에 느린 프로파일을 넣어도 무관하기는 합니다만, 대국 시간이 매우 늘어지기 때문에 기본적으로 인공지능 대국을 할 때는 빠른 프로파일을 선택한다고 보시면 됩니다.


- 바둑판 크기 : 기본 사이즈인 19로 놔두시면 됩니다.


- 덤 값 : 중국룰이냐 일본(한국)룰이냐에 따라 수치를 변경해주시면 됩니다. 6.5 ~ 7.5


- 접바둑 돌수 : 접바둑을 둘 때, 인공지능을 백 플레이어로 설정하고 접바둑 돌수에 원하는 숫자를 입력하시고, 덤 값을 없애주시면 됩니다.


- SGF파일명 : GRP는 각 대국을 기보로 저장합니다. 그냥 두시면 현재 날짜와 시각이 자동 기록되고, 원하는 이름으로 변경하실 수도 있습니다.


- 분석할 색깔을 선택 : 복기시 어느쪽을 복기하겠냐고 묻는 항목인데, 양쪽 모두 분석하게 놔두시는 것이 좋습니다.


설정이 끝났으면 하단 시작 버튼을 눌러 바둑판을 띄워줍니다. (최초 실행시 튜닝 작업을 하므로 다소 시간이 오래 걸릴 수 있습니다.)



대국 진행중인 화면



다른 기능 필요없이 인공지능과 바둑을 두는 것만이 목적이라면 그냥 즐겁게 바둑알을 바둑판에 나열하시면 됩니다....만 GRP를 찾으시는 분들은 대부분 바둑 내용을 분석하고자 하는 분들이시니 조금 더 설명하겠습니다.


기보를 나열하며 공부를 하거나 TV 중계를 옮겨서 두며 형세판단을 할 경우 인공지능의 승률 판단과 다음 수가 궁금할 수 있는데, 이럴 경우 화면 상단 'Live game' 탭 오른쪽에 보이는 '+' 버튼을 클릭해보시면 현재까지의 대국 내용을 그대로 옮긴 새로운 바둑판이 뜹니다. 여기서 인공지능 선택 버튼을 눌러 느린 프로파일 인공지능을 선택하면 몇 초 후에 우측 Action 버튼이 활성화되는 것을 보실 수 있는데, 여기 Action에서 다양한 명령을 수행할 수 있습니다.



인공지능을 선택하고 Action이 활성화되기까지 다소 시간이 걸리니 침착하게 기다려주세요!



- 한 수 두기 : 인공지능에게 바로 다음 수를 두라는 명령입니다.


- 백으로 두기, 흑으로 두기 : 내가 흑/백으로 둘 테니 니가 백/흑으로 응수해보라는 명령입니다.


- 인공지능이 혼자서 둡니다 : 인공지능이 흑/백 양쪽 모두를 번갈아가며 계속 둡니다.


- 승부 예상 : 진행된 바둑 내용의 승률 분석을 합니다.


참고가 끝나 인공지능에게 더 볼 일 없으면 우측 상단 구석에 있는 x버튼(창을 닫는 x버튼 말고 그 밑에 있는 작은 x버튼입니다!)을 눌러 해당 창을 닫고 다시 Live game으로 돌아가시면 됩니다.


Live game에서 대국을 마무리했으면 화면 좌측에 있는 '검토 시작' 버튼을 눌러 진행된 대국을 '느린 프로파일' 인공지능에게 복기받을 수 있습니다.



GRP의 강력한 복기 기능!



좌측은 실제 진행된 화면이고, 우측은 인공지능이 추천하는 수가 표시되는 화면입니다. 위 대국의 경우 백10번째 착수점이 R16인데 복기에서는 C14를 추천하고 있는 모습입니다. 각 알파벳 좌표에 마우스 포인터를 갖다 대면 참고도와 승률을 보여줍니다.


우측 구석에 콕 박혀 있어 눈에 띄지 않는 ''와 '그래프' 버튼을 눌러보시면 각 수에 대한 분석표와 승률 그래프를 볼 수 있어 학습에 큰 도움이 됩니다.


여기까지가 대국 및 복기 기능 설명은 끝입니다.



다시 메인 메뉴로 나가보시면 어쩌구저쩌구 SGF, RSGF 버튼들이 보입니다. 맨 위의 버튼은 저장되어 있는 기보 파일을 불러와 분석하는 기능, 두 번째 버튼은 인터넷상에 올라와 있는 기보 파일을 다운로드해서 분석하는 기능, 네 번째 버튼은 저장되어 있는 분석된 기보를 불러오는 기능, 다섯 번째 버튼은 분석된 기보를 일반 기보 파일로 변환하는 기능, 여섯 번째 버튼은 분석된 기보를 엑셀 표로 수치를 기록하는 기능입니다. 기보 분석에는 컴퓨터 사양에 따라, 인공지능 설정에 따라 시간이 제법 걸릴 수 있습니다.



기능 설명은 이 정도로 마무리합니다. 사용 중 궁금한 부분이나 막히는 부분 있으시면 댓글 남겨주세요. 제가 아는 범위내에서 답변드리겠습니다 (__)

Posted by 빈둥거리는 포이카

댓글을 달아 주세요

  1. 2018.12.10 01:00  댓글주소  수정/삭제  댓글쓰기

    엘프고 릴라제로 시간설정을 한수둘때 3초 5초 10초 이렇게했을때 초별로 기력차이가있나요?아니면 비슷한가요?

    • BlogIcon 빈둥거리는 포이카 2018.12.11 16:33 신고  댓글주소  수정/삭제

      요즘 블로그를 자주 안 들여다봐서 답변이 조금 늦었습니다.

      인공지능에게 시간을 많이 줄수록 '강해질수도' 있습니다.

      인간과 크게 다를 바 없이 속기바둑은 수가 얕고, 시간을 많이 주면 더 깊은 수를 '구사할 확률'이 오릅니다.

      어디까지나 확률이 오르는 것이라 1초로 설정한 인공지능이 1분으로 설정한 인공지능에게 이기는 경우가 매우 빈번히 발생합니다.

  2. 아니 이럴수가 2019.10.20 05:31  댓글주소  수정/삭제  댓글쓰기

    0.15버젼으로 업데이트 되면서 검토시작 버튼이 사라진거 같습니다 어디로 갔는지 모르겠습니다
    no bot 버젼 쓰고 있습니다 알려주시면 감사드립니다. ㅠ

    • BlogIcon 빈둥거리는 포이카 2019.10.21 11:04 신고  댓글주소  수정/삭제

      검토 시작 버튼은 대국 내용 분석이 진행되어야 생깁니다.

      분석정보에

      *** 로 분석
      분석 상태
      현재 **수

      라고 표시되는 곳이 있는데 여기 현재 2수 이상으로 표시되기 시작하면서 검토 시작 버튼이 생깁니다. 인공지능이 연산하는 시간이 걸려서 실제 사람이 두는 속도보다 늦게 분석이 진행되니 조금 기다리셔야 합니다.

      기다려도 분석이 되지 않고 오류가 발생하는 경우엔 수를 둘 때마다 띵똥 하는 윈도우 경고음이 발생하는데, 만약 이 경우라면 대국 시작 전 셋팅 화면에서 SGF파일명을 클릭해 폴더를 재지정하고 다시 해보시면 됩니다.