서양인들에 의해 주도되어 온 바둑 연구의 분야들

 

바둑철학 : 박우석 (KAIST 인문사회과학부) 저, 동연출판사(3675-2122), 2002, Page 94~133

 

1) 바둑에 관한 기존의 심리학적 연구들

2) 바둑에 관한 기존의 수학적 연구들

3) 컴퓨터바둑과 관련한 기존의 연구들

우리말로 씌어진 컴퓨터바둑 연구

 

로버트 제시엑 (Robert Jasieck) 은 최근 "아마추어들은 바둑을 과학으로 인식되도록 하는 데 크게 공헌했다" 고 주장했다. 옳은 말이다. 그러나 조금만 더 생각해 보자. 그가 염두에 둔 아마추어는 아마도 '서양의' 아마추어들일 것이다. 서양의 바둑 수준은 아직 걸음마수준이다. 그들이 어떻게 바둑 (Baduk) 을 이해할 수 있고, 바둑을 과학으로 이해함으로써 바둑의 본질을 이해하는 데 크게 기여할 수 있다는 말인가? 이러한 의구심은 동양의 기사들, 특히 전문기사들의 심중에 깊숙이 숨어 있음에 틀림없다. 장영호는 매우 용감하게 속내를 드러낸다. 한 칼럼에서 그는 서양인들이 바둑을 학문의 중요한 테마로 연구한다는 데 대해 이렇게 두 가지 의문을 제시한다. 첫째, "바둑의 원리조차 잘 모르는 서양인들이 무슨 학문적 연구를 할 수 있겠는가?" 둘째, "설령 연구를 한다 하더라도 도대체 바둑의 무엇을 어떻게 수학적으로 규명하겠다는 것인가?"

맥락을 무시하고 장영호의 의문들만을 뚝 떼어 제시엑이나 필자와 같이 바둑은 약하지만 바둑을 과학으로 이해해 보려는 소박한 소망을 품고 나름대로 노력해 온 사람들에게 들이댄다면, 그들이 받을 마음의 상처는 의외로 클 것이다. 바둑에 대한 해묵은 애정과 관심이 농축된 웅후한 내공이 실린 그의 의문들은 그러나 바둑을 과학으로 보는 관점과 그에 따른 작업들을 무효화하려는 것이 아니다. 그는 오랫동안 바둑에 관한 학문적 관심을 지녀왔고, 요즈음도 틈틈이 바둑과 연관지어 주역과 노장철학을 연구한다고 한다. 다시 말해서, 그가 주장하고자 하는 바는 서양인들보다 바둑에 대해 더 잘 아는 우리가 바둑에 대해 '지속적으로' 학문적으로 연구해야 한다는 것이다. 실제로 그의 칼럼은 대학에 바둑학과가 신설될 가능성을 논의하고 있고, 그것을 통해 훗날 세계 학계뿐 아니라 온 인류에게 큰 선물을 줄 위대한 바둑학자의 탄생을 기원하고 있다.

최근 서양인들에 의해 이루어진 바둑에 관한 학문적 연구들을 조감하려는 마당에 이런 비판적인 시각을 앞세우는 까닭은 자명하다. 우리에게 낯선 것과 조우하여 교류할 때 자칫 눈을 가리고 귀를 막으며 좋은 것을 애써 내치려고 해서는 안 되지만, 그렇다고 신기한 데 현혹되어 엄정한 평가를 내리지 않고 무작정 추종해서도 안 된다는 상식적인 경고를 상기하려는 것이다.

그러나 바둑에 대한 학문적 연구의 전망은 이런 우려에도 불구하고 대단히 밝은 것으로 보인다. 이러한 낙관적 전망은 단지 국내에서 바둑학이 정립되고, 바둑 연구지가 나오고, 국제 바둑학 학술대회가 개최된다는 외적 현상에만 근거한 것이 아니다. 바둑에 접근하는 자세, 안목의 성숙도라는 면에서 학문적으로 바둑에 접근하는 서양인들의 수준 역시 우리의 마음을 든든하게 해 주기 때문이다. 필자가 염두에 두고 있는 것은 라자레프의 「고대 바둑이 현대과학과 경제학에 미친 영향」이라는 논문이다. 이승우의 소개를 통해 우리에게 알려진 러시아의 바둑 고수 라자레프는 러시아 연방 페트로가 보드스크 (Petrozavodsk) 주립대학교 수학교수인데, 그의 논문은 아주 간결하면서도 포괄적으로 서양인들의 바둑에 학문적으로 접근하는 모습을 생생하게 그려 보여 주고 있다.

무엇보다도 그는 바둑과 과학의 만남에서 제기되는 절실한 문제를 아주 뚜렷이 자각하고 있다. 그에 따르면, "오늘날 컴퓨터 (Computer) 와 정보 기술시대에 바둑과 현대과학과의 관계가 시급한 과제" 가 되었는데, 그것을 그는 "바둑이 인류사회 진보에 공헌할 것인가, 아니면 그대로 단순한 놀이로 남아 있을 것인가?" 라는 대단히 수사적이면서도 정곡을 찌르는 까다로운 문제로 이해하고 있다.

바둑과 현대과학이 여러 공통점이 있다고 보면서 "바둑 원리 (규칙) 들을 수학적 논리를 사용하여 쉽게 설명할 수 있다" 는 점을 들고 있는 점 역시 날카롭다. 그는 과학이라는 영광된 칭호는 "지식의 어떤 분야가 자연 연구에 도움을 주는 결과를 가져오던가 인간이 일상 생활을 하는데 그것을 이용할 경우" 에 주어지는 것이라 가정하면서 "바둑을 둘 때 최적의 연속수를 두었다고 할지라도 바둑판 이외에는 어디서든지 그 수가 쓰이지 않는다" 는 것은 분명하기 때문에 "솔직히 말해서 바둑을 과학으로 취급할 수는 없다" 고 고백한다. 라자레프는 이 지점에서 미묘한 사고의 혼란을 보여 주고 있는데, 왜냐하면 똑같은 이야기를 수학 (Mathematics) 에 대해서도 할 가능성을 배제할 수 없고, 또 자연 연구에 수학이 응용되는 것 못지않게 삶을 살아가는 데서 다양한 방식으로 바둑이 응용되고 있기 때문이다. 그러나 이런 단서를 붙인다 해도 여전히 크게 보아 그와 필자의 입장은 일치하는 것으로 보인다. 그도 또한 "현대과학 역시 어떤 틀에 맞출 수 없는 (인간의 직관력 같은) 수많은 요소들을 취급하지 않으면 안된다" 는 점을 잘 알고 있고, 또 "바둑에 관한 문제들은 인간이 직면해야 하는 자연의 난문제에 비하면 대단히 간단하다" 고 볼 수 있으므로 바둑을 그 어려운 문제들을 다룰 "새로운 수학적 도구와 방법을 연구개발하기 위한 시험대" 로 볼 수 있다고 생각하기 때문이다. 그는 "이것이야말로 현대과학과 인류를 위한 바둑의 역사적 사명" 이라고 믿는 것으로 보이며, 필자는 이렇게 한 문단 안에서 심오한 주장을 명쾌하게 펼 수 있었던 것은 라자레프가 수학자이기 때문이라 여기면서 박수 갈채를 보내고 싶은 심정이 된다.

학문적으로 바둑에 접근한다고 할 때 가장 유망한 개별과학에는 어떤 것들이 있고, 또 서양인 과학자들은 어떤 개별과학을 통해 그러한 접근을 시도해 왔을까? 망라적이라고는 할 수 없어도 라자레프의 글은 대단히 균형 있게 이 질문에 답하고 있다. 참고로 그의 논문의 목차를 소개해 보자.

1) 바둑과 과학

2) 경영예술로서의 바둑

3) 바둑의 수학적 특성과 그 특성을 현대 과학과 경제학에 적용

   (1) 컴퓨터 과학과 인공지능 (Artificial Intelligence)
   (2) 컴퓨터 과학과 정보과학
   (3) 최적화 (Optimization) 이론과
경제학 (Economics)
   (4) 인공두뇌학 (Cybernetics)

라자레프의 논문을 읽기에 앞서 필자는 바둑에 대한 서양인들의 접근 경로를 심리학 (Psychology), 수학, 컴퓨터바둑의 셋으로 나누어 정리할 구상을 가지고 있었고, 실제로 그렇게 하고자 한다. 그러나 이미 목차에서만도 라자레프의 안목이 첨단과학의 내용에 대해 필자보다 훨씬 높은 수준의 이해를 보여 주고 있다는 점이 명백하다. 실제로 필자의 마음 한 편에는 분에 넘치는 이 일을 중단하고 우선 라자레프의 안내를 따라 운영 연구 (Operation Research) 입문서를 갉아먹는다든지, 바둑의 수학적 모델링을 위해 비형식적인 바둑 개념들을 숫자판으로 기술하는 방법 탐구에 투신한다거나, 그가 수학적 모델링 문제로 고심한 사례로 예시한 버크호프 (Birkhoff) 와 푸리에 (Fourier) 에서 수학사와 철학사, 과학사, 그리고 음악과 미술의 역사가 만나는 지점을 탐색한다든지, 바둑의 수학적 모델링과 필연적으로 연결된다는 최적화 이론에서의 브랜치 (Branches) 와 바운드 (Bounds) 방법 (Branch and bound) 이 뭔지 알아본다든지 하고 싶은 욕망이 넘쳐난다. 그러나 나이를 생각해야겠지.

한 가지 얄궂은 점은 라자레프가 거론하는 특정 개별과학의 특정 이론들이나 연구자들이 오늘날 컴퓨터를 중심으로 하는 서양인의 바둑 연구에서 흔히 거론되는 수준을 넘어서 있다는 사실이다. 예컨대 그는 벌리캠프 (Elwyn Berlekamp) 의 연구도, 사이먼의 연구도 언급하지 않았다. 따라서 필자가 아래에서 보고하는 연구들과 아울러 참조할 필요성이 있을 뿐만 아니라 통상적인 접근을 넘어서 더욱 진지한 고급 연구의 지침이 될 가능성이 아주 높다고 여겨진다.

『이승우 바둑이야기』에는 서양인들이 "언제부터 바둑문화에 접하게 되었는가?" 라는 흥미로운 문제가 제기되고 있다. 마르코폴로의 『동방견문록』을 통해서라는 일설을 언급한 다음, 이승우는 본격적으로 바둑이 서양에 수출된 시기를 1880 년대 초반으로 잡고 있다. 그에 의하면, 일본의 메이지유신 초기에 유럽의 과학문명을 배우기 위해 초빙된 과학기술자 가운데 도쿄대의 산술, 약학 강사였던 오스카 콜셀트 (O. Korschelt) 라는 독일인이 있었는데, 그는 호엔샤 소속의 무라세 슈호에게 바둑을 배웠고, 귀국후에는 『바둑의 이론과 실제』라는 저서를 통해 바둑을 서양에 널리 알렸다는 것이다. 콜셀트는 일본을 떠날 무렵에는 슈효에게 여섯점으로 버틸 만큼 기력이 향상되었다고 하며, 독일 학회지에 슈호의 포석과 정석을 풀이한 기보와 해설을 기고하였다고 한다.

로이 레어드 (Roy Laird) 는 「미국의 바둑 발전사」에서 서양인이 바둑과 처음 만난 것을 1860 년 미국을 방문한 외교관과 국회의원들이 필라델피아의 어느 체스클럽에서 일본 장기 (Shogi) 의 시법을 보이는 한편 "드롯스 (draughts) 와 다소 유사하고 모든 방향에서 19 개의 정사각형으로 되어 있는 판 위에서 즐기는 또 다른 일본 게임을 설명해 준" 사건에서 찾고 있다. 그러나 이 사건은 "간단하고 이해하지 못하는 해후" 에 불과했고, 레어드는 진정한 북미의 바둑 역사는, 전설적인 국제 그랜드마스터 엠마뉴엘 라스커의 조카이고 그 자신이 당대 최고수 중 하나였던 에드워드 라스커 박사에게서 시작된다고 보았다. 라스커 박사가 1905 년 베를린에서 바둑과 처음 만나고, 1914 년 미국으로 이주하고 바둑을 잊고 있다가 1925 년 뉴욕으로 이사하면서 마샬 체스클럽의 지하에 바둑클럽을 만들었으며, 1934 년에는 바둑입문서를 집필하였고, 미국 바둑협회를 1935 년에 결성하였다는 것이다.

서양인들 중 바둑에 제일 처음 접한 사람들이 학자들이라는 점은 여러 가지로 시사하는 바가 많다. 대략 100 년 내지 150 년의 기간동안 그나마 그들이 바둑에 관한 관심을 전승하여 오늘날 라자레프 정도의 무시할 수 없는 균형 잡힌 바둑관에 도달하였을 뿐 아니라 제반 과학에서 바둑과 관련된 연구를 수행함으로써 동양권의 바둑 연구와 생산적인 교류를 수행할 토대를 다졌다는 점은 크게 경하해야 할 일이라 믿는다.

1) 바둑에 관한 기존의 심리학적 연구들

버마이스터 (Jay Burmeister) 는 호주 퀸즈랜드대학교 전산학과 대학원 박사과정 학생인데, 심리학자인 지도교수 와일즈 (J. Wiles) 와 더불어 활발하게 컴퓨터바둑 관련 심리학 및 인공지능 분야의 학술논문들을 발표하고 있다.

버마이스터가 운영하는 홈페이지 'http://psy.uq.edu.au/~jay/'  의 Paper 에 올려져 있는 "An Introduction to the Computer Go Field and Associated Internet Resources" 의 제 4 절 「컴퓨터바둑 분야의 역사」에는 학술적 연구에 할애된 첫번째 소절에서 조브리스트 (Zobrist) 의 연구, 라이더 (Ryder) 의 연구, 그리고 리트먼 과 윌콕스 (Walter Reitman and Bruce Wilcox)의 연구 등이 소개되고 있다.

그러나 리트먼과 윌콕스의 경우 아주 명백하듯, 데 그루트 (De Groot), 체이스와 사이먼 (Chase and Simon) 의 체스 (Chess) 연구에 근원을 두고 있다는 점은 널리 알려진 사실이라 할 수 있다. 명지대 바둑학과의 최일호 교수가 <2001 국제 바둑학 학술대회> 에서 「체스에 있어서의 전문가 기억」이란 논문을 통해 회상 능력에 있어서 전문성 효과에 대한 연구의 기원을 "체스에 잇어서 문제해결 과정을 최초로 연구한 데 그루트" 에서 찾고, '전문가들의 회상 능력에 대해 가장 잘 알려진 이론' 으로 "체이스와 사이먼 (1973) 에 의해 제안된 청크 (Chunk) 이론" 을 소개한 것은 따라서 정석적 수순이라고 볼 수 있다. 최교수가 스스로 같은 성격의 연구를 바둑에 대해서 하지 못한 점을 유감으로 생각하고 있는데, 이것은 다시 말해서 그가 조만간 우리에게 그런 연구를 선사하겠다는 약속으로 볼 수 있다. 우리가 해야 할 일은 따라서 꽃놀이패 하는 심정으로 관련된 의문점들을 지적해 두는 정도일 것이다.

최일호 교수는 데 그루트 및 체이스와 사이먼에 의거하여 체스에 관한 심리학적 연구의 주요 과제로 "선택적 탐색, 패턴재인 (Pattern Recognition) 의 중요성, 점진적 수준 향상과 전문가의 탁월한 기억능력" 을 꼽았고, 고버트 (Gorbet, 2000) 에 의거하여 체스 전문가들의 기억수행 연구의 주요 방향을 1) 지각 (Perception) 과 패턴 재인의 주요성, 2) 단기기억 (Short Term Memory) 과 장기기억 (Long Term Memory)의 상대적 역할, 3) 이론적으로 가정되는 청크의 존재, 상위 수준 지식의 역할에 대한 연구에서 찾고 있다.

필자가 리트먼의 바둑에 관한 심리학 (Psychology) 연구에 접한 것은 1985 년경으로 기억된다. 유학 시절 바둑에 대한 향수를 다소나마 달래주던 『미국 바둑잡지 (American Go Journal)』의 기사를 통해 알게 되었다고 짐작되는데, 아무튼 그녀의 논문 "Skilled Perception in Go: Deducing Memory Sructures from Inter-Response Times" 의 복사본을 구해 훑어보기까지 했었다. 전공 분야가 아닌 탓에 참을성 있게 읽지도 못했고, 따라서 몇 퍼센트나 이해했을지 모르지만, 흥미로웠던 점이 몇 가지 있었다.

우선 연구방법에서 그녀는 미국인 최초의 바둑 전문기사인 제임스 커윈 (James Kirwin) 의 존재에 크게 힘입었다. 커윈의 어린 시절 기보 수백 국을 자료로 활용할 수 있었고 연구 당시 일본에서 아마고단자 수준에 달한 채로 프로 입문을 목표로 정진하던 커윈을 피험자로 쓸 수 있었던 것이다. 내용에서 주목되었던 점은 바둑 초심자가 바둑 전문가와 논리적 문제해결 능력에서는 대차를 보이지 않는 반면 지각과 기억에서 큰 차이를 보인다는 점, 전문가가 과거의 경험과 숙련을 통해 청크라 불리는 친숙한 패턴들을 기억하고 있다는 점, 그 청크들은 전문가가 초심자와 달리 무의미하거나 유망하지 않은 수들로 시간을 낭비하지 않고 유의미하고 유망한 수들에 집중할 수 있게 한다는 점 등이었다.

15 년이 흐른 지금 내 앞에는 리트먼의 논문 복사본이 다시 놓여 있다. 돋보기를 끼고 꼼꼼히 읽어 보려 하는데 그게 잘 되지 않는다. 올라가지 못할 나무인가 보다. 최일호 교수와 정수현 교수가 장차 철저한 전문적 연구를 해 주리라 믿으며 이쯤에서 모르면 손 빼는 편이 좋을 듯 하다. 고무적인 일은 리트먼의 연구에 대한 보고가 심리학 개론서에까지 이미 편입되어 있다는 사실이다. 서울대 심리학과 조명한 교수는 여러 심리학자들과 공동저술한 『심리학개론』의 '언어와 사고' 를 다루는 장에서 문제해결 과정에서 장기 기억 속의 정보가 어떤 역할을 하느냐와 관련하여 체이스와 Herbert Simon 의 실험이 심오한 통찰을 준다고 보고한 직후 리트먼이 동일한 결과를 바둑에서 실험적으로 입증하였다고 단언하고 있기 때문이다. 그의 글에서 다음과 같은 구절을 인용해서 음미하는 일은 의미있는 일일 것이다. "우리는 직접 기사들이 한판 승부가 끝난 이후에 실전에서 두었던 순서대로 모두 복기함을 알 수 있다. 인용된 실험 결과에 비추어 보건대, 훌륭한 실전일수록 더욱 그 바둑판을 잘 기억할 수 있음을 짐작할 수 있다. 잘 기억한다는 것은 바둑알 하나 하나의 관계를 잘 파악하는 일이다."

끝으로 주목할 만한 점은 리트먼에게 윌콕스 (Bruce Wilcox) 라는 공동연구자가 있었다는 사실이다. 실제로 '리트먼과 윌콕스' '리트먼, 커윈, 윌콕스' 의 공동연구가 발표된 사례가 여럿 있다. 이 점을 강조하는 까닭은 윌콕스의 경우 훗날 컴퓨터바둑 프로그램을 만들기까지 했고, 그 과정에서 아래에서 다시 논의될 컴퓨터바둑과 관련된 다수의 이론적 연구를 수행했다는 사실을 지적해 두기 위함이다. 

2) 바둑에 관한 기존의 수학적 연구들

지금 필자 앞에는 고색이 창연한 인쇄물이 놓여 있다. 1986 년 1 월 2 일 웨스트 버지니아 대학교 철학과 드레인지 (Theodore Drange) 교수가 친절하게 우편으로 부쳐준 그의 철학 강의 자료이다. <게임의 철학 (philosophy of games)> 이 과목의 정식 명칭이었다고 한다. 어떤 경로를 통해 그가 바둑에 관심이 많다는 것을 알게 되었는지는 이미 기억이 나지 않는다. 너무나 바빴던 유학 시절이어서 우편으로 아홉줄 바둑을 두자는 그의 제안에도 응하지 못했고, 일본 바둑규칙에 문제가 많고, 중국 규칙이 훨씬 우수하다는 그의 논변을 서신을 통해 함께 토론할 호기도 스스로 날려 버리고 말았다. 아마도 아마추어 초단에 불과한 그와 아홉줄 바둑을 두다가 지기라도 하면 어떡하나 하는 옹졸한 마음이 들었던 것 같기도 하다. 그런 공포심이 공연한 것이 아니라는 점은 그가 부쳐준 자료 속에 아홉줄 바둑에 관한 정리들의 목록이 빼곡이 자리잡고 있기 때문이다. 얼마 전 바둑 TV 에서 아홉줄 바둑 대회를 진행했던 것으로 알고, 몇 차례 구경한 소감은 생각 외로 아홉줄 바둑도 흥미진진하다는 것이었음을 상기할 때, 혹시 이 정리들을 마스터하고 나면 아홉줄 바둑의 달인이 될지도 모르는 일 아니겠는가?

좋은 사람을 만나는 귀한 인연을 필자는 평생 잘 살리지 못했다. 통한의 심정으로 드레인지 교수가 보낸 편지를 조금 더 읽어 내려가니 아찔해지는 대목이 또 있다. 그의 바둑 호적수가 수학과 의 김진배 교수이고, 그는 Kyungpook Mathematical Journal Vol. 18, No. 1, (June 1978) 에 바둑의 수학적 분석을 시도한 논문을 발표한 바 있다고 한다.

나는 아직껏 김진배 교수의 논문을 구해서 읽어보지 못했다. 오랜 시간이 흘렀고, 무수한 기회가 있었음에도 불구하고 나의 게으름은 정말 못 말린다. 사활문제 풀이에 실패한 기객이 용서받을 수 없다면, 자료조사조차 게을리한 학자는 더더욱 용서받을 수 없을텐데 말이다. 당시 바둑사법 노릇한 답례 겸 새 옷이나 다름없는 양복 10벌을 선뜻 선물하셔서 필자를 울리신 재미 수학자 엄기철 교수 님을 통해 김진배 교수님에 관해 이런저런 이야기를 들었던 것 같은데, 세월은 흐르고, 받기만 하고 보은하지 못한 못난 사람에겐 회한만 가득하다.

온고이지신 하지 못하고 있는 동안 새까만 하수로만 알았던 서양인들은 놀랍게 성장해꼬, 1960 년대부터 이미 바둑을 주제로 한 박사학위 논문이 나오기 시작하더니, 소위 조합게임이론 (Combinatorial Game Theory) 이란 것이 나오면서부터 그 진보의 속도가 무섭게 빨라진 것 같다.

벌리캠프 (Elwyn Berlekamp) 라는 미국 U.C. 버클리 수학과 교수가 바둑의 끝내기 연구에 '조합게임 이론' (combinatorial game theory) 을 원용하는 연구를 수행한다는 소식은 월간 『바둑』등을 통해 국내에도 여러 차례에 걸쳐 소개된 것으로 안다. 이 분야의 연구로 벌리캠프 교수 밑에서 박사 학위를 받은 사람도 여러 명에 이르고 그 중 한국인 김용환 박사 (Where is the "Thousand-Dollar Ko"?)도 끼어 있다는 사실이 매스컴의 시각을 피해 가기 어려웠기 때문이리라 짐작된다.

생각보다 어렵게 벌리캠프 (Elwyn Berlekamp) 와 그의 제자 울프 (David Wolfe) 공저의 Mathematical Go  (Elwyn Berlekamp & David Wolfe: Mathematical Go, A K Peters Ltd, 1994. Japanese translation by Yoshigawa published by Toppan, Tokyo) 라는 책을 입수하였다. 역시 예상했던 대로 해독불가능이다. 수학과 김동수 교수님 전공이 조합수학이라고 하니 점잖게 자문을 구해 보도록 하자. 국내 수학자 수가 턱없이 부족하다는 것은 익히 알고 있었지만, 조합수학 전문가가 서른 명 남짓이라는 사실에 다시 한번 놀라면서, 무한한 외경심을 품고 전화 다이얼을 돌린다. 얼굴은 안 보이지만, 난감해하는 김동수 교수님의 모습이 전화선을 타고 쩌릿쩌릿하게 전해져 온다. 그래! 불가능한 일이야. 어떻게 남이 평생 걸려 습득한 학식을 전화 한 통으로 전송받을 수 있겠어. 그래도 역시 평소 느낌대로 교수님은 점잖으신 분이다. 친절하게 참고문헌과 아울러 중요한 학자들의 이름을 가르쳐 주신다. 숙제하듯 콘웨이 (Conway) 가 누군지, 가이 (Guy) 가 누군지 알아본다. 벌리캠프, 콘웨이, 가이 공저의 Winning Ways   (Elwyn Berlekamp, John Conway, & Richard Guy: Winning Ways (vol. I), second edition, A K Peters Ltd, 2001) 라는 두 권짜리 공저도 입수한다. 인터넷에서 구할 수 있는 조합수학 관련 논문들은 모두 구해 본다. 역시 해독불가능이다. 우울증이 아닐까? 잠실에서 정신과 개업하고 있는 죽마고우 홍택유 아마 6 단을 한번 만나 공짜로 상담을 받아 볼까? 짜증이 난다.

왜 국내 수학자들은 조합게임 이론에 관한 입문서를 내지 않는 것일까? 명지대 바둑학과 김정우 교수가 알찬 학술서를 준비하고 있다고 믿고싶다. 바둑을 사랑하는 한국인이면 김정우 교수가 정상급 아마 고수이고 특히 끝내기가 강할 뿐만 아니라 한국과학기술원 수학과에서 이학박사를 받은 분이라는 것을 잘 알고 있기 때문이다. 김정우 교수가 바둑에 관해 쓴 논문을 꼭 두 편 찾아 읽었다. 한 편은 『바둑과 문화』에서, 또 한 편은 『국제 바둑학 학술대회 논문집』에서. 전자는 단급 체계 정비라고 하는 중요한 문제를 다룬 중요한 업적이지만, 조합게임 이론에 관한 연구에 바탕을 둔 것이 아니라 그가 오랫동안 가꿔 온 <푸른돌 기우회> 에서의 경험에 바탕을 둔 것이다. 후자는 끝내기 연구에 관한 것이고, 참고문헌에는 분명히 벌리캠프와 울프의 저서가 포함되어 있어 자못 기대를 걸었는데, 그들의 연구에 대한 연관성은 최소한에 그치지 않는가 하는 느낌이 든다. 물론 독자적 연구로서 그 연구의 심도가 서양인들의 그것을 훨씬 능가하리라고 짐작하지만, 김정우 교수 외에 그 누가 조합게임 이론에 의한 바둑 연구의 현황을 우리에게 적절하게 소개해 주겠는가 하는 점에 생각이 미치면, 자못 서운한 것이다. 

3) 컴퓨터바둑과 관련한 기존의 연구들

1997 년 7 월 29 일자 <뉴욕타임즈> 에는 조지 존슨 (C. Johnson) 의 「막강한 컴퓨터를 테스트하려면, 고대 게임을 하라」는 제목의 흥미로운 글이 실렸다. 제법 부피도 있고, 바둑에 대해 잘 모르는 서양인들에는 개안의 희열을 줄 수도 있을 훌륭한 글로 보인다. 그러나 짧은 영어 실력으로 도 닦듯 끝까지 참고 읽어내는 일은 상당한 고역이었다. 다 읽고 나서 "내가 몰랐던 내용이 뭔가?" 를 따져 볼 때 그 고통은 한층 가중된다. <Deep Blue> 라는 컴퓨터체스 프로그램이 체스 챔피온 케리 카스파로프 (Garry Kasparov) 를 꺾은 일은 정말 누구나 다 아는 일이다. 고 잉창치 선생이 아마추어 정상급 기사를 꺾는 컴퓨터바둑 프로그램에 1,400 만 달러의 현상금을 내걸었던 일도 바둑팬이라면 들은 적이 있다. 서양 체스와 바둑의 차이에 대해서도 기본적인 사항은 쭉 꿰고 있다. 상금이 탐이 나서 (?) 상당수의 컴퓨터바둑 프로그램이 개발되었고, 또 컴퓨터 관련 테크놀로지의 비약적 발전에 따라 최근 들어서 컴퓨터바둑의 진보 속도가 대단히 빨라졌지만, 아직 아마추어 중하급자 수준에 머물러 있다는 것도 익히 아는 이야기다. 컴퓨터바둑의 전문가들에게 자문을 구해야 했을 터이므로 널리 알려진 컴퓨터바둑 프로그램 <The Many Faces of Go> 의 개발자인 데이비드 포트랜드 (David Fotland) 와 <Handtalk> 의 개발자인 첸지성 (Chen Zhixing) 교수 이야기가 나오고, 거기서 그들의 결국 한 수 배운 점은 모두 기사의 제목에 다 들어 있었던 것이다. 컴퓨터를 테스트한다는 것은 무엇을 의미하는가?

<뉴욕타임즈> 기사를 읽고 컴퓨터바둑에 관해 관심을 갖게 되었거나 위의 질문에 대한 답을 알고 싶어하는 사람에게 권하고 싶은 글은 현재 캐나다 엘버타 대학교 컴퓨터과학과 교수인 마틴 뮐러 (Martin Müller) 의 "Computer Go: a Research Agenda" 라는 논문과 "Computer Go" 라는 논문이다. 컴퓨터바둑 연구의 현황에 관한 정확한 정보를 최소의 투자를 통해 얻어내는 데 안성맞춤인 이 논문의 내용을 소개하기에 앞서 저자인 뮐러가 누구인지부터 알아보자. 차차 분명해지겠지만, 그가 중요한 인물이기 때문이다. 바둑을 사랑하는 우리는 이승우를 통해 이미 그에 관해 다소의 이야기를 전해 들은 바 있다. 『이승우 바둑이야기』에 실린 「비엔나에서 바둑을」이라는 글은 1993 년 여름 이승우의 유럽 바둑여행기의 일부인데, 뮐러 5단은 오스트리아의 바둑 고수 중 하나로서, 그 해 프라하에서 열린 유럽바둑선수권대회에서 25 위를 한 것으로 보고 되고 있다. 뮐러가 "Computer Go as a Sum of Local Games: An Application of Combinatorial Game Theory" 라는 제목의 박사학위 논문을 세계적 명문 취리히 공대에 제출한 것이 1995 년이니까 당시 그는 아직 박사과정 학생이었음에 틀림없다. 그렇다면 1980 년대 말과 1990 년대 초에 유럽에서 유종수와 만났을 가능성이 높다. 이쯤에서 호기심을 견디지 못하고 유종수에게 물어볼 수밖에. 언제나 그렇듯, 간결하고도 정확한 답. 두 점 접어 주고 차례 바둑 지도를 했다는 것. 지기 싫어하고, 접바둑의 발상 자체에 거부감을 갖는 서양인으로서 그 정도면 상당한 수준의 아마추어라고 할 수 있다. 박사학위를 마친 후 뮐러는 일본 <NTT Communication Science Laboratory> 에 근무하며 상당수의 컴퓨터바둑 논문을 발표했고, 그 중에는 일본인 연구가들과의 공동연구도 포함되어 있다. 미국 바둑협회 인터넷 홈페이지를 방문해 본 바둑매니아라면, 컴퓨터 바둑 분야의 관리를 뮐러가 맡아 왔다는 사실도 이미 알고 있을 것이다.

정리해 보자. 현재 세계적으로 알려진 명문대학교의 컴퓨터 학과에 교수로 봉직 중인 서양인 아마추어 고단자가 있는데, 그는 전공이 컴퓨터바둑이다. 다시 말해서 여기 아주 명실상부한 바둑학자가 또 한 명 있는 셈이다. 바둑에 관한 논문을 쓰고 강의하는 것으로 밥벌이를 하는 정말 몇 안 되는 학자인 것이다.

바둑으로 컴퓨터를 테스트한다는 화두의 의미를 뮐러에게 물어보아야 하는 까닭은 자명하다. "Computer Go" 라는 논문의 논문초록에서 그는 "컴퓨터바둑은 아마도 게임 프로그래머들이 직면하고 있는 최대의 도전일 것이다" 라고 했기 때문이다. 뮐러는 "컴퓨터바둑이 다수의 가공할 개념적, 기술적 도전을 제기한다" 라고 주장하면서 아주 흥미로운 문제의식을 표출한다. 최고의 컴퓨터바둑 프로그램은 보통 (usually) 좋은 수들, 고수들이 두는 수들을 두는데, 그럼에도 불구하고 한판의 바둑 전체를 통해 보여 주는 수준은 매우 저급한 까닭이 무엇인지 몰라 뮐러는 곤혹스러워 한다. 뮐러는 자신의 의문을 공유하기 위해 두 가지 사례연구를 보고한다. 첫째 사례는 1999 년 11 월 3 일 샹하이에서 열린 잉창치배 컴퓨터 바둑대회 (International Computer Go congress) 결승전에서 첸지성 (Chen Zhixing) 교수가 <Handtalk> 의 개량본인 <Goemate> 를 들고 나와 마이클 라이스 (Michael Reiss) 의 <Go4++> 와 겨룬 한판이다.

뮐러의 관전평을 간추려 보도록 하자. 그는 백16 까지 흑백 양측이 모두 우선 귀를 취하고 다음에 변으로 향하는 포석 원리에 따라 무리없이 두어 나갔고, 좌하귀의 정석적 응접은 양측의 초반 프로그램에 입력된 대로일 것이라 본다. 이건 좀 이상하다 싶은 착수들이 제법있지만 뮐러는 백30 의 삭감, 흑31 과 흑39 의 침입수, 그리고 백52 정도를 거론한 후, 흑63 시점에서 바둑이 끝내기의 양상을 보인다고 했다. 흑75 가 지나치게 소극적이라고 하고, 백76 의 의도가 좌하측 흑진 파괴에 있는데 흑이 백94, 백112 를 허용함으로써 방어에 실패했다고 하고 있다. 그러나 흑83 이하의 진행에서 중앙의 백 몇 점을 잡아서 백130 시점에서 미세한 국면이라고 보고 있다. 그런데 흑131 이 납득할 수 없는 후퇴였다고 한다. 뮐러는 그것이 컴퓨터 프로그램의 버그로 간주한다. 당연히 백132 에 이었어야 한다는 것이 그런 평가의 근거이다. 그 결과 흑137 까지 10집 이상의 손해를 보았고, 이후 끝내기에는 별로 거론할 바가 없어서 백이 완승을 거두었다고 한다.

뮐러가 지적하듯 이 사례는 현재 컴퓨터바둑의 정수를 보여 주는 흥미로운 한 판의 바둑이다. 뮐러는 예전의 프로그램과 달리 <Go4++> 와 <Goemate> 가 그저 상투적인 수만 두는 것이 아니고, 안전한 영토의 개척을 시도한다거나 큰 진영을 편다거나 상대방 세력을 제한하려 한다던가 하는 점을 들어 두 프로그램 모두 바둑의 여러 측면에 대한 이해를 과시해 보이고 있다고까지 평가한다. 그러나 컴퓨터바둑의 허실은 그 다음 사례에서 아주 적나라하게 드러난다.

이 사례는 뮐러 자신이 1998 년 잉창치배 챔피언이고 당대 최강의 컴퓨터 프로그램 중 하나인 <The Many Faces of Go> 를 29 점을 접어주고 둔 바둑이다. 뮐러는 초반 흑이 백의 약점 추궁을 잘 방어했다고 본다. 좌하귀에서의 패싸움을 통해 백은 흑대마를 하나 잡았고, 그에 이어진 집요한 안형 파괴 시도의 결과 흑이 대마를 살리기 위해 지나치게 많은 수를 소비했다고 생각한다. 백은 또 나중에 우하귀에서 흑대마를 하나 더 생포하는 데 성공하였고, 그 결과 형세는 접근했으며, 이후 백은 힘들이지 않고 끝내기하여 승리했다고 한다.

이 바둑 전체를 통해 흑의 수들은 대부분 일리 있는 것들이었다고 뮐러는 생각한다. 그러나 그저 백이 승리를 낚아채기에 충분할 정도의 실수를 했다는 것이다. 얼핏 컴퓨터 프로그램이 하수 주제에 안전한 길로 가지 않고 호선 바둑 두듯 덤빈 것이 주된 패인으로 여겨지기 때문에 집짓기 일변도로 나가는 컴퓨터바둑 프로그램은 이기기가 훨씬 더 어려울 것이라고 생각하기 쉬운데, 뮐러는 이에 대해 불과 몇 주 전 재미 한국기원 소속 전문기사 제니스킴 <Handtalk> 를 상대로 비슷한 칫수의 접바둑에서 승리했다는 사실을 상기시킨다.

대부분의 국내 애기가들은 컴퓨터바둑 프로그래머가 아니기 때문에 아마도 필자와 마찬가지로 이러한 사례들을 통해 그저 최근의 컴퓨터바둑의 수준을 가늠하는 일 자체가 흥미로우리라 여겨진다. 그러나 컴퓨터바둑 프로그래머들에게는 어떻게 해서, 무슨 이유로 컴퓨터바둑 프로그래밍이 이토록 어려운지를 이해하는 일이 그들의 전산학, 인공지능학, 기타 관련된 여러 과학들의 수준을 테스트하는 하나의 도전으로 부각되고 있는 것이다.

뮐러에 따르면, 컴퓨터바둑 프로그래밍의 역사는 1960 년대로 거슬러 올라가고, 개인용 컴퓨터가 1980 년대에 널리 보급되고, 또 '잉창치배' 가 생겨 매력적인 동기를 부여함으로써 크게 붐을 일으켰다고 한다. 그의 보고에 따르면, 초창기에는 대만의 <Dragon> 등의 프로그램이 두각을 나타냈고, 1981 년에서 1991 년까지는 마크 분 (Mark Boon) 의 <Goliath> 이 모든 대회를 석권했으며, 그 뒤를 이어 켄첸 (Ken Chen) 의 <Go Intellect>, 첸지성 (Zhixing chen) 의 <Handtalk> 와 <Goemate> 가 강자로 부상했다고 한다. 최근의 강자로는 위에서 거론된 데이비드 포트랜드 (David Fotland) 의 <Many Faces of Go>, 많은 논란을 불러일으킨 북한의 <KCC Igo>, 그리고 마이클 라이스 (Michael Reiss) 의 <Go4++> 가 있다고 한다.

뮐러 자신이 고백하듯 컴퓨터바둑에 관한 연구문헌은 가히 폭발적인 증가 추세를 보이고 있어서 이제 와서는 그 연구물들 모두를 독파하는 일 자체가 불가능에 가깝게 되었다. 결국 선별이 중요해지는데, 뮐러는 초창기에 관해서는 윌콕스 (Wilcox) 의 연구, 1980 년대 중반 이후에 관해서는 키이룰프 (Kierulf) 의 박사학위 논문, 1990 년대 전반부에 대해서는 에어바흐 (Erbach) 의 연구를 꼽고 있다. 그리고 기존의 프로그램들에 대한 비교 연구로 위에서 언급한 버마이스터 (Burmeister) 와 와일즈 (Wiles) 의 공동연구를 들고 있다. 그러면서 그는 미국 바둑협회 공식 인터넷 웹사이트의 컴퓨터바둑 페이지로 그 자신이 관리하고 있는 'http://www.usGo.org/computer' 를 소개한다. 또 컴퓨터바둑을 주제로 한 박사학위 논문이 30 년 전에 등장하기 시작해서 요즈음에는 거의 매년 한 편씩 나오고 있다는 의미 있는 보고를 하고 있다. 백문이 불여일견이다. 뮐러가 운영하는 위의 웹사이트를 방문하시고, 또 거기에 연결되어 있는 서양인들의 컴퓨터바둑 관련 웹사이트들을 방문하다 보면 크게 느끼는 바가 있을 것이다. 웬만한 자료는 모두 웹 상에서 다운로드 받을 수 있고, 또 컴퓨터 프로그래머들이 끝없이 정보를 교환하고 선의의 경쟁을 통해 하루가 다르게 발전하고 있는 것을 목격하게 될 것이다.

필자는 컴맹인 까닭에 컴퓨터바둑 프로그래밍에 관련된 연구들을 세부적으로 검토하고 평가한다는 것은 가당찮은 일이다. 그런 만큼 컴퓨터바둑 분야에서 대단히 중요한 역할을 감당하고 있는 뮐러라는 컴퓨터바둑학자를 소개한 것만으로도 할 일을 다 했다는 기분에 젖어 있다. 그러나 바둑학에 관심을 둔 젊은이들과 컴퓨터바둑에 다소나마 관심을 지닌 우리의 컴퓨터 과학도, 공학도들에게 서비스하는 심정으로 국내에서의 컴퓨터바둑 연구에 대해 다소의 정보를 제공하고자 한다.

필자가 기억하는 한 국내에서 최초로 컴퓨터바둑 프로그램을 개발하고, 국내 대회를 석권한 것은 카이스트 석사 출신인 지원호의 <맥> 이라는 프로그램이다. 자료를 가지고 있지 못하지만, 역시 기억에 의존할 때, 1990 년대 중반에는 10 개 남짓의 컴퓨터바둑 프로그램들이 국내 대회에 출전하여 자웅을 겨루고, 또 어린이 기사들과 접바둑을 두었다는 월간 『바둑』의 기사를 가끔씩 읽었던 것 같다. 이제 뮐러의 보고를 통해 해외 컴퓨터바둑계의 현황에 대해 다소 알게 된 마당에 우리의 컴퓨터바둑 프로그램들이 다른 나라의 컴퓨터바둑 프로그램들과 겨루어 어떤 정도의 성적을 올렸을까 궁금해지는 것은 당연하다. 그리고 현명하신 독자들께서는 이미 짐작하시듯이, "좋은 성적을 올리지 못했다" 는 것이 정답이다. 웬만큼이라도 성적을 거두었다면, 뮐러가 언급이라도 했을 것 아닌가 말이다. 북한의 프로그램은 거론되었다는 점을 상기해 주시기 바란다.

우째 이런 일이 일어났을까? 한국 컴퓨터바둑의 이런 우울한 현실은 세계 바둑 최강국으로서의 한국의 바둑계에 치욕이 아니란 말인가?

특히 오랫동안 필자에게 미스터리였던 점은 우리에게도 뛰어난 컴퓨터 과학자들이 많고, 또 그들 중 상당수가 서양인 컴퓨터바둑 프로그래머들과는 비교할 수 없을 정도로 바둑이 세다는 것은 불문가지인데 우리의 컴퓨터바둑 프로그램이 전혀 힘을 쓰지 못하고 있다는 도저히 이해할 수 없는 사실이다. 더구나 바둑 TV 가 하루 종일 방영되고, 하루 종일 컴퓨터로 바둑을 즐길 수 있는 웹사이트가 10여 군데가 넘고, 또 각 웹사이트마다 동시 접속자 수가 1만 명을 넘기는 마당 아닌가! 컴퓨터와 바둑을 연결짓는 것은 이제 정말 새삼스러운 일이 되고 말았다. 그렇다면, 정말 우째 이런 일이 일어났을까?

바둑이 학문적으로 연구되지 못했다는 점이 결국 정답이리라 믿는다. 외국과 비교해 볼 때 바둑, 그리고 컴퓨터바둑에 관한 학문적 연구는 정말 거의 전무하다고 밖에 할 수 없다. 정수현 교수나 문용직 박사 역시 선행 연구의 희귀성에 절망하고 외로운 여행자의 심경을 토로하는 모습을 보이지 않았는가! 그러나 '거의 전무하다고 할 수밖에 없는 것' 과 '전무한 것' 사이에는 명백히 천양지차가 있다. 과연 우리에게는 컴퓨터바둑에 관한 선행 연구가 전무한가?

정답은 정말 기쁘게도 '아니다' 이다. 우선 월간 『바둑』에 가뭄에 콩 나듯 국내에서 이루어진 바둑에 관한 학문적 연구가 어떤 형태로든 소개되곤 한다. 또 한국정보과학회 등 국내 학회를 줄기차게 쫓아다니다 보면 역시 가뭄에 콩 나듯 바둑에 관한 학문적 연구라고 할 만한 사례들과 만나게 된다. 석ㆍ박사 학위논문 역시 마찬가지다. 국내에 대학이 몇 군데이고, 컴퓨터학과가 있는 곳이 몇 군데인지는 몰라도 그곳들에서 컴퓨터바둑을 주제로 한 학위 논문이 한 편도 나오지 않았다면, 그건 정말 이상한 일이다. 별달리 뛰어다닌 기억이 없는데도 지금 필자의 책상 위에는 국내에서 나온 컴퓨터바둑 관련 논문들이 10 여 편 쌓여 있다. 많다면 많고, 적다면 적은 분량이다. 어쨌거나 서양 컴퓨터바둑계의 주목할 만한 인물로 뮐러를 소개했듯이, 국내 컴퓨터바둑계의 공로자로 이종철 전 경북대 컴퓨터공학과 교수를 소개할 수 있다는 것은 정말 망외의 기쁨이다.

지금 필자의 책상 위에 놓여 있는 국내에서 발표된 컴퓨터바둑 관련 논문 중 7 편은 학술지에 게재된 정규 논문이고, 흥미롭게도 그것들 모두가 공동연구의 성과물인데, 이종철 교수는 그 중 6 편에 저자로서 이름을 올리고 있다. 또 필자의 책상 위에는 컴퓨터바둑을 주제로 한 국내 대학 학위논문들이 10 편 놓여 있는데, 그것들 중 8 편에 이종철 교수는 지도교수로 이름을 올리고 있다.

경북대 대학원 컴퓨터공학과에서 이종철 교수의 지도 아래 공학 석사 학위를 받은 사람들로 유정혜 (1991), 김영상 (1992), 최영숙 (1992), 이경자 (1992), 이동기 (1993), 임중권 (1993), 박현수 (1994), 김경아 (1994) 등이 있다. 이들 중 김영상은 이종철 교수와 더불어 「컴퓨터 바둑 프로그램 설계 명세 연구」와 「컴퓨터 바둑 프로그래밍 기법」이라는 두 편의 논문을 함께 썼다. 김영상은 1990 년대 중반부터 제주 한라대학 교수로 재직하면서 컴퓨터바둑 연구를 지속적으로 추진하여 2000 년 12 월에는 유기영 교수 지도 아래 「바둑 국면에서 돌의 세기와 자리의 영향력 분포에 의한 형세 평가」라는 제목으로 공학박사 학위를 받았다. 경북대에서 컴퓨터바둑 연구로 박사 학위를 받은 또 한 명의 연구자로 경동전문대학 전산정보처리과 교수 이두한이 있고, 그의 1997 년 학위논문 제목은 「컴퓨터바둑에서 상태 재현이 회피된 완전 해결 트리 생성 기법과 형세 판단」이다. 이두한은 박현수, 이종철과 함께 「상태재현 회피에 의한 게임트리의 최소화」「컴퓨터바둑에서 형세 판단을 위한 객체지향적 프로그램의 설계 및 구현」을 썼다. 1990 년대 후반에 경동전문대학 교수진에 가담하는 박현수는 이 외에도 임종권, 이종철과 함께 「바둑에서 휴리스틱 함수를 사용한 사활 문제 풀이에 관한 연구」를, 그리고 김경아, 이종철과 더불어 「바둑에서 형세판단에 근거한 효율적인 정석 선택」을 썼다.

경북대 이외의 국내 대학에서 나온 컴퓨터바둑 관련 학위 논문으로 필자가 입수한 것은 연세대학교 대학원 전산과학과에서 1993 년 김종찬 교수 지도 아래 김재형이 제출한 석사학위 논문 「컴퓨터바둑에서 사활문제의 처리」와 대전산업대학교 산업대학원 전자계산학과에서 1995 년 김종찬 교수 지도 아래 이혁순이 제출한 공학석사 학위 논문 「가중 최대최소 역전파 알고리즘에 의한 컴퓨터바둑의 사활문제에 관한 연구」가 전부이다. 이종철 교수가 저자로 이름을 내밀지 않은 학술지 논문으로 필자가 구할 수 있었던 것은 김종찬, 이일병 공저의 「비최대최소전파법과 컴퓨터바둑의 사활문제」뿐이다.

필자의 조사는 결코 기존의 국내 컴퓨터바둑 관련 연구물들을 망라했다고는 볼 수 없다. 예컨대 문용직은 『바둑의 발견』에서 필자가 얻어 보지 못한 이진호, 이두한 공저의 「컴퓨터바둑에서의 객체 지향성」을 참고문헌란에 올리고 있다. 그러나 위와 같이 국내 연구물들을 훑어 본 다음 이종철 교수를 중심으로 한 경북대학교 컴퓨터 공학과 대학원 출신 연구자들, 특히 김영상, 이두한, 박현수, 임중권, 김경아가 현재 국내 컴퓨터바둑 연구의 선도 연구자 집단을 이룬다고 판단하는 것은 지극히 온당하다고 여겨진다. 아울러 대전산업대학교 전자계산학과 김종찬 교수가 아직 이렇다 할 연구팀을 구성하지는 못한 채 꾸준히 세력을 키우고 있다는 점에 주목할 만 하다.

되풀이하거니와 국내 컴퓨터바둑 연구의 성과를 평가하는 일은 명백히 필자의 능력을 넘어서는 주제넘은 일이다. 그러나 얄팍한 호기심을 다소나마 더 채운다는 의미에서 이 외로운 연구자들이 저 현란한 수식과 다이아그램들을 가지고 바둑에 관해 무슨 연구를 해 왔는지 살짝 훔쳐보고자 한다. 몰래카메라에 의해 관음증이 급속히 전염되고 있는 요즈음의 세태라면, 이 정도는 애교로 보아줄 만 하리라 믿으면서 ….

우선 문외한에게 그나마 접근이 가능한 것으로 보이는 글이 김영상, 이종철의 논문 「컴퓨터 바둑 프로그래밍 기법」이다. 그들은 서론에서 "세계 각국에서 컴퓨터바둑을 연구하는 사람들과 그들의 접근 방법론 및 지금까지의 연구 결과를 분석" 하겠다고 약속할 뿐 아니라 "본 연구실에서 수행 중인 컴퓨터바둑 프로젝트를 기반으로 컴퓨터바둑에 적절한 프로그래밍 방법론을 제안" 하겠다고 약속하고 있기 때문이다. 위에서 우리는 뮐러나 버마이스터의 요약된 보고를 훑어보았으므로 자연스럽게 어떤 점에서 김영상, 이종철이 거기에 보태는 바가 있는지에 관심과 기대를 갖게 된다. 그리고 이러한 기대는 헛되지 않았다. 역시 전문가는 뭔가 다른 법이다.

김영상, 이종철은 우리가 위에서 거론한 리트먼과 윌콕스의 프로그램이 Lisp 언어로 작성되었고 목표 트리들을 구성하고 궁극적으로 계층적 목표 트리 구조에서 단일 노드로 동일한 목표쌍을 조합한다는 아이디어에 바탕을 두었다는 깔끔하고도 호기심을 자극하는 정보를 제공한다. 그 뿐만 아니라 그들이 제안한 "다양한 정보 표현 기법으로 최선의 수를 선택하기 위한 알고리즘" 이 "상대의 돌에 대해 직접 인접하여 착점하기를 꺼리고, 상대가 위급한 대마를 탈출하려는 상황에서 오히려 아군의 세력 중 허술한 지역이 위험에 처할 수 있게" 만드는 약점을 지적하기까지 한다. 역시 위에서 언급된 마크 분 (Mark Boon) 의 프로그램 <Goliath> 이 "가속화된 패턴매칭 기법을 사용함으로써 정석과 초반에 강한 특성" 을 가졌다든가, 시라야나기 (Shirayanagi) 의 프로그램 <YUGO> 가 LISP 를 이용하여 "특별히 정의된 용어와 표기법, 패턴 지식을 사용하는 기호적 표현법을 제안" 하였다던가, <Dragon II> 는 "공격과 방어에 대한 많은 종류의 패턴 지식을 보유하고 이를 평가하기 위한 깊이 우선 탐색 기법을 사용한 프로그램" 이라든가, 위에서 거론된 포트랜드의 <Many Faces of Go> 는 "210 개의 패턴을 기반으로 다음에 착점할 순서의 전체 트리를 계산할 수 있게 하였다" 든가, 펠 (Barney Pell) 이 확률적 평가 함수 학습과 기존 기반 기계 학습의 두 가지 관점에서 컴퓨터바둑을 수행했다든가 하는 정보는 이 분야에 관심을 두는 이들에게 대단히 요긴한 정보라 하지 않을 수 없다.

무엇보다도 김영상, 이종철은 그들이 개발한 프로그램 <큰돌 (Keundol)> 이야기가 소개되고 있어 반갑기 짝이 없다. <큰돌> 은 1991 년부터 인공지능 프로젝트로 시작되었다고 하며, 그들의 이론적 연구와 아울러 "객체 지향적 개념을 사용하여 바둑판의 반면에 존재하는 요소 사이의 유기적 관계로서 <큰돌> 의 단면을 기술" 한다고 한다. <큰돌> 이라는 이름이 무엇을 의미하는지는 어렵지 않게 짐작할 수 있다. '큰 돌' 을 영어로 음역하면 그렇게 될 가능성이 높으니까 말이다. 실제로 서양인들은 최근에는 'Keundol' 이 아니라 'Big Hand' 로 이종철 교수의 프로그램을 호칭하는 것으로 보인다. 직접 의미를 물어 보고 나서 개명을 권유했는지, 이 교수 스스로 고친 것인지는 알 길이 없지만, 아무튼 재미있다.

IBM-PC 를 사용하여 C 언어로 작성된 <큰돌> 은 1995 년 11 월 4, 5 일 양일간 (주) 한글과 컴퓨터 주관하에 한국기원 대회장에서 치러진 1995 년 잉창치배 세계 컴퓨터바둑대회에 출전하였다. 잉씨 룰 (rule) 을 적용하여 스위스식 리그 방식으로 치러진 이 대회에는 모두 10 개 팀이 참가하여 표와 같은 성적을 냈다.

이 결과를 놓고, 김영상, 이종철은 <Goliath> 과 <Nemesis> 는 1993 년 이후 참가하지 않고 있다는 점, 1 위에서 3 위까지의 세 팀은 1993 년과 1994 년 대회에서도 역시 5 위 이내에 들었던 강팀이라는 점 등을 우선 지적하였다. 앞서 뮐러의 소개를 읽은 기억을 살려 성적표를 다시 살펴보면, 역시 뮐러가 거론한 강팀 <Handtalk> <Go Intellect> <Many Faces of Go> <Go++> 가 좋은 성적을 냈고, 뮐러 자신의 <Exploler> 도 제법 괜찮은 성적을 냈지만 상위 프로그램들보다는 아직 한 수 아래로 <큰돌> 을 포함한 국내 프로그램들과 비슷한 정도의 수준임을 알 수 있다.

<표 1> 1995년 세계 대회 최종 결과

프로그램명

라운드

승수

순위

1

2

3

4

5

1. Handtalk

+4

+7

+3

+2

+5

5

1

2. Go Intellect

+6

+3

+5

-1

-4

3

3

3. MFGO

+9

-2

-1

+6

+7

3

4

4. Go4++

-1

+10

+6

+7

+2

4

2

5. Stone

+10

+8

-2

+9

-1

3

5

6. Explorer

-2

+9

-4

-3

+8

2

6

7. Sasom

+8

-1

+10

-4

-3

2

7

8. Jungnyeom

-3

-6

-9

-10

-6

0

10

9. Keundol

-3

-6

+8

-5

+10

2

8

10. Rex 95

-5

-4

-7

+8

-9

1

9

김영상, 이종철은 컴퓨터바둑계의 강자들과의 대전 경험을 복기하듯이 간략하면서도 농축된 언어로 잘 요약하여 보고하였다. "<Handtalk> 은 다음 수를 계산하는 시간 및 수행 코드 크기가 짧고, 중반전에 강한 것이 특징" 이고, "공격적이기보다는 철저한 수비형" 이라는 점, "<Go Intellect> 는 패턴 추출기와 같은 20 여 개의 특수화된 '수 생성기 move generator' " 를 지녔고, 알파-베타 탐색 기법을 쓰며, 영향력과 연결성을 결정하는 휴리스틱한 (Heuristic) 평가함수에 기반한다는 점, <Many Faces of Go> 는 "250 여 개의 착점 규정과 2만 6,000 개의 정석, 320 개의 특수 패턴을 지식으로 가지고 있으며, 전술적 분석기 (tactical analyzer), 및 연결성, 눈, 사활, 영역 측정기 (evaluator) 등으로 가장 최적의 수를 읽어낸다" 는 점 등등이 그것이다.

이미 위에서 뮐러의 보고를 통해 1995 년에 좋은 성적을 낸 프로그램들이 여전히 주도적인 위치를 점하고 있다는 점을 알 게  프로그램들의 운명과 관련하여 좀 더 상세한 정보를 얻고 싶은 마음이 드는 것은 인지상정이다. 그리하여 뮐러가 관리하는 미국바둑협회 웹사이트의 컴퓨터바둑 페이지를 다시 방문한다. 그리고 1996 년과 1997 년의 잉창치배 세계 컴퓨터바둑 대회 성적표를 얻어 본다.

<표 2>  ibgc 1996 년 최종 결과

순위

결  과

프 로 그 램

개    발    자

1st.

6wins

Handtalk

Chen Zhi Xing

2nd

5wins

GoIntellect

Ken Chen

3rd

4wins

Stone

Kao Kuo Yuan

4th

3wins

Go4++

Michael Reiss

5th

3wins

Many Faces of Go

David Fotland

6th

3wins

Go Master

Jee Wonho

7th

3wins

Jimy

Yan Shi-jim

8th

3wins

Wulu

Chen Guo Bao, and Fan Jin Chao

9th

2wins

Sason

Ha Youngkyun

10th

2wins

DFGO

Chen Tie Jun

11th

1win

WQ

Wang Sheng Jun

12th

1win

Wu

Wu Tong Kuan

 

<표 3>  1997 년 같은 대회 최종 결과

순위

프로그램

비고

1

    Handtalk

 

2

    Go4++

 

3

    Go Intellect

 

4

    Silver lgo

 

5

    The Many Faces of Go

 

6

    MODGO

 

7

    FunGo

 

8

    Star of Poland

 

9

    Explorer

 

10

    Super Ego

 

1996 년 성적표에서 필자에게 흥미로운 점은 1995 년에 5 위를 했던 Kao Kuo Yuan 의 <Stone> 이 1996 년에 3 위로 올라선 점, 지원호가 <Go Master> 를 가지고 6 위를 한 점 정도이다. 1997 년도 성적표에서는 일본인 Naritatsu Yamamoto 가 Silver Star Japan 을 표하여 <Silver lgo> 를 가지고 돌연 등장하여 상위에 랭크된 점, 한국의 박용구의 <FunGo> 가 그나마 7위를 해서 체면 유지를 했다는 점이 주목된다. 상위권의 극소수 몇 프로그램을 제외하고는 연륜과 무관하게 새로운 다수의 경쟁자들이 출몰하여 중하위권의 위계 질서를 무너뜨리는 추세라고 판단된다.

국제대회에 명함을 내밀었던 국내의 컴퓨터바둑프로그램은 그렇다면 최소한 <큰돌> <Go Master> <FunGo> <Sason> 등이 존재하는 셈이다. 그렇다면 그 후 이들의 용쟁호투는 어떻게 전개되어 갔고, 그 결과 오늘의 무림 맹주는 어느 프로그램인 것일까?

라이스 (Michael Reiss) 의 홈페이지 'http://www.reiss.demon.co.uk/webgo/compgo.htm' 에 보면 그의 <Go++> 가 2001 년 7 월 '21세기 컵' (21st Century Cup) 을 제패했다는 뉴스와 더불어 8 위까지의 랭킹이 소개되어 있다.

또 2001 년 2 월 서울에서 열린 'SUN-Garosu.com cup' 의 8 위까지의 성적이 소개되어 있다.

라이스는 흥미롭게도 '21세기 컵' 에 <Fungo> 가 출전하지 않았다는 점에 주목했다. 이런 2001 년의 최신 서적을 놓고 주목할 점은 그러나 <Haruka> 와 <Wulu> 의 놀라운 출현이라 여겨진다. <Goemate> 가 <Handtalk> 의 개량본이라는 점을 잊지는 않으셨겠지요 어쨌거나, 이쯤 되면 1998 년, 1999 년, 2000 년의 성적이 궁금해지는 것이 당연하다. 다행히도 그 정보 역시 어렵지 않게 웹상에서 구할 수 있었다.

라이스의 홈페이지에는 포트랜드가 작성한 통합 전적표를 소개하는 페이지가 있었기 때문이다.

표 맨 윗줄의 F 는 1995 년 일본이 새로 만든 FOST 대회로 매년 8월 열리고 1 등에게 미화 9,000 불을 수여한다고 한다. C 는 The Computer Olympiads 를 말하고, 이 대회는 바둑만이 아니라 다양한 컴퓨터 게임들을 위한 것이다.

이 표를 보면 다시 한 번 <Haruka> 와 KCC team 의 <KCC IGO>, 그리고 <Wuhu> 가 놀라운 속도로 상위권에 진입했다는 것을 확인할 수 있다. 박용구의 <Fun Go> 의 용전분투가 우리로서는 너무나 흐뭇하고, 지원호의 <Go Master> 가 놀라운 끈기로 제 자리를 지키고 있다는 점 역시 반갑다. 이종철의 <Big Stone> 이 1997 년 이후 대회에 참가하지 않고 있다는 점은 ChunHo Lee 의 <Sason> 이 외국의 <Stone> <Nemesis> <Goliath> <Dragon> 등과 더불어 더 이상 대회에 출전하지 않는 옛 프로그램은 분류된 것 못지 않게 매우 서운하다.

<표 4>  통합 전적표

 

 

 

 

 

O

 

 

 

 

 

 

F

I

F

I

F

I

F

I

C

F

I

 

86

87

88

89

89

90

91

92

93

94

95

95

96

96

97

97

98

98

99

99

99

R

Michael Reiss

Go4++

 

10

 

 

 

 

 

 

 

 

2

2

2

4

3

2

2

3

1

2

1

2.1

Zhixing Chen

Handtalk

 

 

 

 

 

 

6

2

1

3

1

1

1

1

1

1

1

4

3

7

2

2.8

Ryuichi Kawa

Haruka

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

4

3.7

KCC team

KCC IGO

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

1

3.7

David Fotland

Many Faces of Go

 

4

8

 

7

 

10

6

4

2

3

4

3

5

10

4

4

1

6

3

4

4.3

Xiuyu Lei

Wulu

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

 

3

2

5

6

6

4.9

Ken Chen

Go Intellect

 

 

5

4

3

2

2

1

3

1

4

3

4

2

2

3

6

5

13

8

8

6.4

Yong Goo Park

Fun Go

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

6

14

8

4

5

4

6.6

Altred Knoepfle

Modgo

 

 

 

6

 

 

8

 

5

6

 

 

 

 

 

5

 

 

 

 

 

7.3

Janusz Kraszek

Star of Poland

 

9

4

3

6

3

5

5

2

4

 

 

 

 

4

7

 

 

 

 

 

8.3

Tristan Cazenave

Gogol/Golois

 

 

 

 

 

 

 

 

 

 

 

 

12

 

5

 

11

6

 

 

11

8.7

Shi-Jin Yan

Jimmy

 

 

 

 

 

 

 

 

 

 

9

 

6

7

9

 

5

7

8

12

 

8.8

Yasuo Oishi

Goro

 

 

 

 

 

 

 

 

 

 

7

 

5

 

13

 

8

 

17

10

 

11.1

Meikou Tei

Young Leaf

 

 

 

 

 

 

 

 

 

 

 

 

 

 

21

 

7

 

9

11

 

11.2

Hiroshi Yamashita

Aya

 

 

 

 

 

 

 

 

 

 

 

 

16

 

7

 

17

 

10

 

7

11.3

Wonho Jee

Go Master

 

 

 

 

 

 

9

 

 

 

 

 

 

6

27

 

10

14

11

9

10

11.5

Martin Mueller

Explorer

 

 

 

1

4

7

13

 

8

 

 

6

8

 

12

8

20

13

12

 

 

12.3

Masahiro Tanaka

Biwako

 

 

 

 

 

 

 

 

 

 

 

 

10

 

6

 

 

 

19

14

 

13.2

Shinchi Sei

Katsunari

 

 

 

 

 

 

 

 

 

 

 

 

13

 

19

 

13

 

15

 

9

14.2

Hiroto Yoishi

Monkey Jump

 

 

 

 

 

 

 

 

 

 

 

 

 

 

24

 

12

 

 

 

 

15.9

Noriaki Sanechika

Igo 1988

 

 

10

 

5

6

4

 

 

 

 

 

 

 

18

 

16

 

28

 

 

17.6

컴퓨터바둑 프로그램 이야기가 너무 길어졌다. 다시 컴퓨터바둑을 중심으로 한 학문적 연구로 되돌아가 보자. 성공적인 컴퓨터바둑 프로그래밍을 위해 프로그래머들이 컴퓨터바둑 분야에서 이용할 수 있는 학문적 이론으로는 어떤 것들이 있는가? 위에서 우리는 뮐러나 이종철 등의 보고를 통해 지금까지 컴퓨터바둑의 강호에 출현했던 컴퓨터바둑 프로그램들은 저마다 나름대로의 기법을 특색으로 지니고 있다는 것을 알았는데, 이제 그 기법들을 부류하고 정리하여 대세를 파악해 볼 수는 없는가?

문외한의 이러한 무식한 주문에 대해서도 전문가들은 아주 친절하게 다음 수를 준비하고 있는 법이다. 예컨대 뮐러의 박사학위 논문과 김영상의 박사학위 논문은 컴퓨터바둑에 많이 응용되는 이론으로 고전적 게임이론 (Game Theory), 게임한정 (game specific) 이론, 휴리스틱 (Heuristic), 그리고 조합게임이론 (Combinatorial Game Theory) 을 꼽고 있다. 또 극히 최근 출판된 논문에서 부지 (Bouzy) 와 까즈네프 (Cazenave) 는 지난 몇 년 동안 제안되어 실험되고 있는 최신 기법 내지 이론으로 몬테 카를로 바둑, 수학적 형태론 등을 아울러 소개하고 있다. 특히 부지와 까즈네프의 논문은 문외한도 아주 즐겁게 읽을 수 있도록 내용을 잘 소화하여 소개하고 있어 강호제현의 일독을 감히 추천하고 싶다. 말 타면 경마 잡히고 싶다는 말도 있듯이 전혀 생소한 분야이지만 힐끔힐끔 훔쳐 보다보니 그 재미가 만만치 않아 주책없는 이 중년 사내는 어느새 몇 수 늘어지긴 했지만 컴퓨터바둑에 한 번 투신해 볼까 하는 망상에 사로잡혀 행복한 오후 나절을 보내고 있다.

Martin Müller 와 김영상 이 고전적 게임이론 (Game Theory) 에서의 기법으로 의미하는 바는 무엇인가? 뮐러는 우선 고전적 게임 이론이 폰 노이만 (John von Neumann) 등의 개척자들에 의해 개발되었다는 점을 지적하고, 폰 노이만의 2 인 게임의 모델에서 경기자는 종국에 이르기까지 번갈아 가며 착수하며, 종국의 시점에서 승패는 평가함수 (Evaluation Function) 에 의해 결정된다는 점을 친절하게 상기시킨 다음, 최대최소 규칙이 게임이 종료되지 않은 상태에서 최선의 수를 찾아내는 데 이용될 수 있다고 쓰고 있다. 레이몬 (Ramon) 과 불로킬 (Blockeel) 은 최소-최대 검색 기법을 이렇게 설명한다. "두 명의 선수는 최대 Max 와 최소 Min 로 불린다. 최대는 게임의 결과를 최대화 시키려고 노력하고, 최소는 최소화 시키려고 노력한다. 최소최대 (Mini-max) 알고리즘에서 먼저 전체의 게임 트리 (Tree) 가 세워지고 그 다음에 거꾸로 평가를 하는 것이다. 각 기점에서, 만일 최대가 움직이면 하위기점의 최대값을 취하며, 만일 최소가 움직이려면 하위기점의 최소값을 취하는 것이다." 누구라도 금방 깨달을 수 있듯이, 바둑에서 우리는 완전한 게임 트리를 만들 수 없다. 그래서 최소-최대 검색 안에서 또 여러 가지 기법들이 고안되게 되고, 뮐러는 알파베타 가지치기 (Alpha-Beta Pruning), 전위표 (transposition table), 병행 검색 (Parallel search) 등을 예로 들었다. 이 중 가장 잘 알려진 알파-베타 가지치기를 레이몬과 블로킬은 다음과 같이 아주 알뜰하게 잘 설명하고 있다.

'알파-베타 가지치기' (alpha-beta pruning) 방법은 최소-최대 알고리즘을 단순히 최적화시키는 것이다. <표 6> 를 살펴보자. 기점 A 에서, 최소는 6 이라는 값을 가진 가지 Ac 를 선택할 것이다. 그 다음, 우리는 기점 B 를 살펴보자. 먼저 4 값을 가진 Ba 를 살펴보자. 우리는 이제 최대의 가지 B 는 결코 선택하지 않을 것이라고 추론할 수 있다. 왜냐하면 가지 B 의 값은 최대 4 를 넘지 않기 때문이다 (최소의 선택에 의해서). 이는 6 보다도 작은 값이다. 그러므로, 우리는 Bb 와 Bc 는 평가할 필요가 없는 것이다. 이와 유사하게, Ca 와 Cb 를 평가한 후, 5<6 이므로 우리는 Cc 를 평가할 필요가 없는 것이다.

<표 5>  알파-베타 가지치기

게임한정 이론을 설명하기 위해 Martin Müller 는 체스에서 한 쪽은 왕과 승정, 그리고 기사를 가지고 상대방은 왕만 가지고 승부를 겨루는 식의 하부 게임을 들면서 그런 특수한 게임의 문제를 해결하기 위해 개발된 특별한 이론들이 많다고 보고한다. 바둑에서의 그런 부분 게임에 관한 특별 이론으로 그는 렌츠 (Lenz) 의 수상전 공식과 벤슨 (Benson) 의 완생 탐지 알고리즘을 들었다.

휴리스틱스 (Heuristics) 란 엄격한 이론은 아니지만 바둑 격언들처럼 적시적소에서 잘 활용할 경우 크게 도움이 되는 요령 정도로 이해할 수 있을 것이다. 또 뮐러가 지적하듯 전형적인 맥, 사활과 수상전에서의 급소 모두가 휴리스틱한 수 생성 규칙으로 이해될 수 있다. 따라서 구태여 강조하지 않아도 실질적으로 모든 컴퓨터바둑 프로그램들이 휴리스틱스를 이용한다고 보아 마땅하다.

조합게임이론 (Combinatorial Game Theory) 에 관해서는 앞에서 이미 논의하였으므로, 이제 우리는 컴퓨터바둑 프로그래머들이 그 동안 대충 어떤 이론들을 무기 삼아 프로그램 개발 연구를 수행해 왔는지를 짐작할 수 있다. 뮐러와 김영상이 어떤 기준이나 척도에 의해 이 이론들을 네 가지 유형으로 분류했는지는 생각 외로 분명하지 않다. 필자의 느낌으로는 컴퓨터바둑 프로그램 개발의 역사, 좀더 구체적으로는 컴퓨터 체스 프로그램 개발에서 효과적이었던 기법과 이론들을 무작정 컴퓨터바둑프로그램 개발에 적용하는 과정에서 직면하게 된 의외의 문제들에 임시변통 격으로 대응해 온 역사가 오히려 이 이론들의 성격과 기능, 그리고 역할을 이해하는 데 도움이 된다. 좀 더 부연한다면, 컴퓨터 체스에서와 달리 고전적 게임이론에 바탕을 둔 검색 (Search) 트리의 방법이 체스 (Chess) 와는 비교할 수 없을 정도의 복잡성을 지닌 바둑의 난해함 때문에 뮐러와 김영상이 열거한 여타 이론들의 정립과 발전을 요구했다고 크 그림을 그려 볼 수 있겠다. 경우의 수가 너무 많아서 검색 트리 방법에는 한계가 있다. 그 방법 내에서 '알파-베타 가지치기' 기법처럼 더욱 정교한 방법들을 동원한다 해도 사정은 별로 나아지지 않는다. 그렇다면 아홉줄 바둑처럼 열아홉줄 바둑의 부분이라 할 수 있는 게임 (Game) 에 특수한 이론을 개발하여 그것을 전체에 일반화하는 방법을 써 보자. 또 한 판의 바둑을 바둑두는 이들이 포석, 중반, 끝내기로 나누는데, 그렇게 단계별로 나누어 적용하는 이론을 달리하여 보자. 정석 사전 데이터베이스를 입력하거나, 사활 묘수풀이 사전 데이터베이스를 입력하는 등 바둑에 관한 지식을 컴퓨터에게 많이 제공해 보자. 그래도 안 되면, 그 지식을 상황에 따라 응용할 수 있도록 휴리스틱한 지침들을 입력하도록 하자. 조합게임 이론에 의해 끝내기 영역에서 상당한 성과가 얻어졌으니 만큼 바둑 전체를 부분의 단순한 합으로 가정하고 그 결과를 바둑 전체에 응용해 보도록 하자. 뭐 이런 식으로 접근해 온 것이 아닐까?

문외한이 뭐 이렇게 알지도 못하는 이야기를 떠벌리느냐고 노발대발하는 독자들이 제법 될 것 같아 한시 바삐 줄행랑치고 싶은 마음뿐이다. 그러나 어떠하랴! 컴퓨터바둑 연구의 수준이 이 정도라면 한번 모든 걸 걸고 승부수 던지듯 벤처 기업 하나 차려보고 싶은 마음이 드는 것을. 

우리말로 씌어진 컴퓨터바둑 연구