CAFE

바둑철학논문+ 대만의 계가법

작성자고추잠자리|작성시간09.12.21|조회수198 목록 댓글 0

 

 

바 둑 철 학 논 문

양자컴퓨터를 이용한 바둑

곽 승 연

(20020607)

물리학과

한 국 과 학 기 술 원

2004

Abstract

현재 컴퓨터 바둑의 주요 당면과제를 대부분 소프트웨어-알고리즘, AI 등-의 측면에서 접근하고 있다. 여기에서는 컴퓨터 바둑의 연산을 하드웨어의 측면의 접근, 특별히 양자컴퓨터와 연관시켜 고찰한다.

먼저 컴퓨터 바둑에서 주로 이용되는 게임이론의 개요를 2장에서 설명한다. 기본 이론을 알아야 가능한 문제에 접근할 수 있기 때문이다. 3장에서는 동일한 게임이론의 바탕에서 계발된 컴퓨터 체스의 발전을 Deep Blue를 통해 살펴보고 체스에서의 컴퓨터 기술이 바둑에서 동일하게 사용될 수 있는지 살펴본다. 그리고 양자컴퓨터의 사용을 통한 문제 해결방안을 제시한다. 이어서 4장에서는 양자컴퓨터에 대한 소개를 하고 양자컴퓨터의 연산능력이 현재 컴퓨터 바둑이 안고 있는 문제를 해결할 수 있는지에 대한 가능성을 모색해본다.

목 차

Abstract

1. 서 론 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 1

2. 게임이론

2.1 최대 최소 탐색과정 (minimax search procedure) ‥‥‥‥‥‥‥‥‥‥‥‥ 2

2.2 알파-베타 자르기 (alpha-beta pruning) ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 3

2.3 휴리스틱 (Heuristic) ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 6

3. 체스에서의 컴퓨터 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 8

3.1 Deep Blue ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 8

3.2 체스와 바둑의 비교와 바둑연산의 한계성 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 8

3.3 바둑연산의 해결방안과 양자컴퓨터와의 관계 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 9

4. 양자컴퓨터 (Quantum Computer) ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 11

4.1 양자컴퓨터의 개요 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 11

4.1.1 양자컴퓨터 (Quantum Computer)란? ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 11

4.1.2 큐빗 (Qubit) ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 12

4.2 연산능력 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 12

5. 결 론 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 14

참고문헌 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥ 15

1. 서 론

바둑은 단순한 규칙 속에 많은 경우의 수를 내포하고 있는 ‘Inexact Problem'의 대표적인 게임이다. 최근에 바둑은 게임으로서의 기능을 넘어서 인간의 정신세계의 연구 - 심리학, 인지과학 등- 와 새로운 기술의 개발 - 알고리즘, AI 등- 이라는 학문· 과학 연구 방법(혹은 대상)이 되었다.

물리학도로서 특별히 바둑을 통한 기술 개발이라는 흥미로운 주제를 그냥 넘길 수만은 없을 것 같다. 더군다나 세계의 많은 엔지니어들의 연구와 개발이라는 공격에도 굴하지 않고 여전히 버티고 서있는 저 모습을 본다면 말이다.

컴퓨터 바둑. 정보화시대의 새로운 바둑 문화이다. 컴퓨터 바둑은 두 가지로 나누어서 생각해 볼 수 있겠다. 첫 번째로는 컴퓨터를 매개로 하는 사람-사람간의 바둑이고 두 번째로는 컴퓨터 프로그램과 사람간의 바둑이다. 문제는 두 번째에 해당하는 컴퓨터 바둑인데 이는 과연 바둑 프로그램이 사람을 이길 수 있을 것인가에 대한 궁금증과 도전정신 때문이다. 더욱이 그 연구 과정에서 얻을 수 있는 과학· 기술적 성과와 점점 넓어지고 있는 바둑 시장(market) 등을 생각할 때 컴퓨터 바둑은 많은 사람들이 덤벼들만한 아이템임에 틀림이 없다.

여기에서는 물리학도로서 생각해 볼 수 있는 양자컴퓨터라는 방법을 통해 컴퓨터 바둑을 고찰해보고자 한다.

2. 게임이론

2.1 최대 최소 탐색 과정 (minimax search procedure)

최대 최소 탐색 과정 (minimax search procedure) 은 깊이가 제한된, 깊이 우선의 탐색 과정이다. 현재 위치에서 출발하여, 이길 수 있는 움직임을 만들어 내는 과정을 사용하여, 가능한 다음 번 위치를 만드는 것이 과정의 개념이다. 이들 위치에 정적 평가 함수를 적용하여, 최적 위치를 선택한 후, 출발 위치를 향해 후진하며, 평가된 값을 전달한다. 좋은 상황에 대해 높은 정적 평가 함수의 값이 주어진다고 가정할 경우, 체스에서는 다음 장기판의 위치에 대한 정적 평가 함수의 값을 최대화하는 것이 목표이다.

그림 1 단계 탐색

그림 1 을 예로 하여 이 과정의 작용을 살펴보자. 정적 평가 함수의 범위를 -10 에서 10 사이로 할 때, 10 은 우리의 승리를, -10 은 상대방의 승리를, 0 은 비기는 경우를 나타낸다. 경험적 방법에 사용되는 함수의 값을 최대화하는 것이 목표이기 때문에, 위의 그림에서는 B 로의 움직임을 선택한다. B 의 값을 A 로 후진 전달하면, 8 의 값을 가진 위치로 움직일 수 있다는 것을 알게 되어 A 의 값을 8 로 수정한다.

그림 2.2 단계 탐색

그러나, 체스에서는 상대방에 의해 다음 번에 수행될 움직임과, 위의 레벨로 후진될 단말 값을 고려해야 한다. 우리가 B 로 움직였다고 가정하자. 이때 상대방은 E, F 와 G 중의 하나를 선택한다. 상대방의 목표는 평가 함수의 값을 최소화하는 것이기 때문에 F 로 움직일 것이다. 만약 B 로 움직인다면, 한번 움직인 후, 연이어 발생될 실제 위치는 우리에게 매우 불리하다. 만약 상대방이 노드 E 를 선택한다면 우리에게 유리하지만, 이 단계는 상대방이 움직일 차례이기 때문에, 상대방은 노드 E 를 택하지 않을 것이다. 그림 3 은 새로운 값을 트리의 위쪽으로 전달한 결과를 나타낸다. 상대방이 선택할 차례에서는 그 레벨에서 가장 작은 값이 선택되어 후진 전달되며, 우리가 선택할 차례에서는 그 레벨에서 가장 큰 값이 선택되어 후진 전달된다.

그림 3 단계 탐색의 값의 후진 전달

두번 움직였을 때의 값을 후진시키면 우리는 C 로 움직이는 것이 유리하다는 것을 알 수 있다. 왜냐하면, 이용 가능한 정보가 주어졌을 때, 상대방이, -2 보다 더 낮은 값을 만들기 위해, 그곳에서 할 수 있는 일이 전혀 없기 때문이다. 시간이 허용하는 한 이러한 과정을 여러번 반복 수행하고, 루트 노드가 있는 레벨에서 최적의 움직임을 선택하기 위해, 이 과정의 실행에 의해 만들어진 좀 더 자세한 평가를 사용한다. 평가로부터 얻은 값을 후진시킬 때 교대로 최대값과 최소값을 선택하는 것은 두 경기자의 상반되는 전략을 설명하며, 이로 인해 이 과정이 최대 최소 방법이라 불려진다.

2.2 알파-베타 (α-β) 자르기 (alpha-beta pruning)

최대 최소 과정은 깊이 우선 탐색 과정이다. 시간이 허용되는 범위내에서 가능한 한 많은 경로를 조사하고 정적 평가 함수를 경로의 마지막 레벨의 게임 위치에 적용하여 얻어진 값을 한번에 한 레벨씩 경로 위로 후진하며 전달한다. 깊이 우선 탐색 과정의 한 가지 장점은 이미 알려진 해답보다 부적합한 것으로 판명된 부분적인 해답은 조사하지 않는 분기와 한계 방법을 사용하여, 이 과정의 효율성을 향상시킬 수 있다는 점이다. 세일즈 맨의 방문 문제가 좋은 예이다. 이 문제의 경우, 지금까지 발견된 최적 경로를 기억하는 것만이 필요한 작업이다. 만약, 후에 조사된 부분적인 경로가 이 한계보다 커지면, 이 경로의 탐색을 중단한다. 경기자의 최대화와 최소화를 모두 처리할 수 있도록 탐색 과정을 수정했던 것처럼, 각 경기자에 대해 하나씩 두 개의 한계를 포함하도록 분기와 한계 방법을 수정할 필요가 있다. 이 수정된 방법을 알파-베타 자르기 (alpha-beta pruning) 라 한다. 알파-베타 자르기의 수행을 위해 두 개의 출발 값이 사용되는데, 한 값은 최대화를 목표로 하는 노드에 배정될 값의 하한값 (알파라 부른다) 이며, 다른 한 값은 최소화를 목표로 하는 노드에 배정될 값의 상한값 (베타라 부른다) 을 나타낸다.

그림 4 알파 자르기

그림 4 에 보여진 예를 사용하여 알파-베타 자르기의 작용 방법을 알아 보자. 노드 F 를 조사하고 우리는 상대방이 -5 이하의 값을 배정받을 노드 C 를 선택할 것임을 알 수 있다 (상대방은 최소화를 목표로 하기 때문이다). 그러나 또한 우리는, 만약 노드 B 로 움직인다면, 노드 A 에 적어도 3 의 값이 배정된다는 것도 알 수 있다. 3 보다 적은 값을 만드는 노드로 움직이는 것은 노드 B 로 움직이는 것보다 부적합하다.

따라서 그러한 노드로의 움직임은 무시할 수 있다. 또한 노드 F 만을 조사하고도 노드 G 의 값에 관계없이, 노드 C 로 가는 것은 부적합하다는 것을 확신할 수 있다. 그러므로 노드 G 를 조사할 필요가 없다. 물론, 하나의 노드를 잘라 버림으로써 한계를 기억하고, 이들을 조사하기 위해 필요한 비용을 정당화할 수 있는 것은 아니지만, 만약 여섯 단계 이상의 트리를 조사해야 한다면, 단 하나의 노드만이 제거되는 것이 아니라, 전체 트리의 세 단계를 조사하지 않을 수도 있다.

알파와 베타가 모두 사용되는 방법을 보기 위해, 그림 5 에 소개된 예를 살펴보자. 이 트리를 탐색할 때, 노드 B 를 루트로 한 부분 트리를 모두 조사하여, 노드 A 에 적어도 3 의 값이 배정될 것임을 예측할 수 있다. 노드 F 를 지나 아래로 탐색해 갈 때, 알파 값을 사용하여 노드 L 은 조사할 필요가 없음을 알 수 있다. 이것의 이유를 알아보자. 노드 K 를 조사한 후, 노드 I 의 최대값으로 0 으로 주어져, 노드 F 의 최소값은 0 이 된다. 그러나 이 값은 알파 값 3 보다 적기 때문에 노드 I 의 후계 노드들은 조사할 필요가 없다. 최대화를 목표로 하는 경기자는 노드 C 를 지나 노드 I 로 가는 움직임을 택하면, 결과적으로 획득한 값이 0 보다 좋지 못하다는 것을 예측할 수 있기 때문에, 노드 B 로 움지인다. 다음은 베타 값이 어떻게 사용되는 지 알아 보자. 노드 I 에 대한 탐색을 중단한 후, 노드 J 를 조사하여 노드 F 의 값을 지정될 5 를 얻는데, 이 값은 노드 C 에 대한 베타 값이 된다. 이것은 노드 C 의 값으로 5 이하의 값이 배정됨을 의미한다. 노드 G 를 전개 팽창하여 노드 M 을 조사하고 7 의 값을 얻어, 이 값을 노드 G 에 후진 전달한다. 노드 C 에서 움직일 차례가 된 경기자는 최소화를 목표로 하기 때문에, 7 과 베타 (5) 를 비교하여 5 보다 큰 값 7 을 갖고 있는 노드 G 를 선택하지 않고, 5 를 갖는 노드 F 로 움직인다. 따라서 노드 G 의 후계 노드들은 탐색할 필요가 없다.

그림 5 알파-베타 자르기

앞의 예로부터, 최대화를 목표로 하는 단계에서는 현재의 하한값보다 작은 값을 가진 노드로의 탐색은 중단되고 최소화를 목표로 하는 단계에서는 현재의 상한값보다 큰 값을 가진 노드로의 움직임은 제거됨을 알 수 있다. 최대화를 목표로 하는 경기자에 대해 가능한 움직임을 제거하는 것은 사실상 최소화를 목표로 하는 단계에 대한 탐색의 중단을 의미한다. 다시 그림 4 의 예를 살펴보자. 일단 노드 C 가 노드 A 로부터의 부적합한 움직임으로 결정되면, 노드 C 이하의 최소화를 목표로 하는 단계에 있는 노드 G 나 혹은 다른 어떤 경로도 조사할 필요가 없다. 알파와 베타가 실제로 사용되는 방법은 최소화를 목표로 하는 단계에서 알파 값보다 작은 값을 가진 노드가 발견되면, 그 노드로의 탐색을 중단하고, 최대화를 목표로 하는 단계에서 베타 값보다 큰 값을 가진 노드가 발견되면 그 노드로의 탐색을 중단하는 것이다. 최대화를 목표로 하는 단계에서 높은 값이 발견되면 탐색을 중단한다는 것은 언뜻 보아서는 이상하게 여겨지겠지만, 이것은 최대화를 목표로 하는 단계 위에 있는 최소화를 목표로 하는 경기자가 특정한 노드를 선택할 경우, 최대화를 목표로 하는 단계에서 그 노드를 찾아야만 하기 때문이다.

알파-베타 자르기 과정의 효율성은 조사되는 경로의 순서에 크게 좌우된다. 만약 가장 나쁜 경로가 가장 먼저 조사된다면, 어떤 탐색의 중단도 발생되지 않을 것이다. 그러나 물론 최적 경로를 예측하여, 그것을 항상 가장 먼저 조사한다면, 탐색 과정은 불필요하다. 그러나 완전한 상황에서 자르기 기법이 얼마나 효과적인지 알 수 있다면, 다른 상황에서 이 기법의 수행 능력에 대한 상한값을 정할 수 있다. 만약 노드가 완전하게 순서화되어 있다면, 알파-베타 자르기를 사용하여 깊이 D 까지의 탐색에 의해 조사될 단말 노드의 수는 알파-베타를 사용하지 않고, 깊이 D/2 까지의 탐색에 의해 만들어진 단말 노드 수의 거의 2 배이다. 탐색을 수행할 깊이를 두 배로 하면, 더욱 중요한 이득을 얻게 된다. 비록 일반적으로 이러한 향상을 모두 실현할 수는 없지만, 알파-베타 자르기 기법은 최대 최소 탐색 과정을 효율적으로 향상시킨 기법이다.

이미 조사된 경로에 비해 매우 적게 향상된 부수적인 경로를 조사하지 않는 것으로까지 알파-베타 자르기 과정의 개념을 확장시킬 수 있다. 5-4 단계에서, 조사 중인 경로가 이미 발견된 다른 경로보다 비효율적이라면, 탐색을 중단한다. 그러나 그림 6 에 보인 상황을 살펴 보자. 노드 G 를 조사한 후 노드 C 로 움직일 때 얻을 수 있는 최적값이 3.2 임을 알게 된다. 만약, 노드 B 로 움직인다면, 3 점을 얻는다. 3.2 으로부터 얻어지는 효율성과 3 으로부터 얻어지는 효율성 간에 별다른 차이가 존재하지 않기 때문에 노드 C 에 대한 탐색을 중단하고, 더 많은 이득을 얻을 수 있는 트리의 다른 부분을 조사한다. 이미 알려진 경로에 비해 향상에 대한 가능성이 거의 없는 부분 투리의 탐색을 중단하는 것을 효과 없는 탐색의 중단 (futility cutoff) 이라 한다.

그림 6 효과없는 탐색의 중단

2.3 휴리스틱 (Heuristic)

Heuristic 은 그리스어 "heutiskein" 가 어원이며 "to discover" 라는 의미를 가진다. 즉 이미 정립된 공식에 의해서가 아니라, 정보가 완전하지 않은 상황에서 노력을 통해서 시행착오 (trial and error) 를 거처, 또는 경험을 통해서 주먹구구식의 규칙(rule of thumb) 을 통해 지식을 알게되는 과정을 의미한다. 잘 추측하는 기술 (art of good guessing) 이라고 표현하기도 한다. algorithm과는 달리 heuristic은 해결책의 발견을 보장하지 않는다. 그러나 heuristic은 algorithm보다 효율적이다. 왜냐하면 많은 쓸모없는 대안책들을 실제 시도하지 않고도 배제시킬 수 있기 때문이다. 효율적인 algorithm이 명백하게 바람직한 반면, 불행하게도 어떤 문제들은 (체계적인 탐색처럼) 단지 비효율적인 algorithm만 있게 되며 커다란 문제에 있어서 이러한 접근은 컴퓨터조차 가혹한 것이 된다. 아직 다른 유형의 문제들이 있기 때문에 이론가들은 어떠한 효율적인 algorithm이 가능한지에 대해 의심한다. 예를 들어, '판매원의 지도(travelling salesman)' 문제라고 부르는 것은 지도에 표시된 많은 점(판매원이 방문해야 하는 도시 또는 지점)들을 모두 연결하는 가장 짧은 경로를 발견하는 문제이다. 이 경우 체계적인 탐색 작업은 그다지 효율적이지 않다. 더욱이 점의 수가 증가할수록 계산 량은 거대해진다. 이처럼 적절한 algorithm이 존재하지 않는 상황에서는 다른 전략이 사용되어야 한다.

이미 언급했지만 algorithm은 문제의 해결책을 찾는데 비효율적인 수단이 될 수도 있다. 이를 설명하기 위해, 체스를 두고 있다고 가정해 보자. 최선의 행마를 선택하기 위한 algorithm은 현재의 위치에서 가능한 모든 움직임의 연속을 추적해 보아야 한다. 평균적으로 체스판의 특정한 한 위치에서 움직일 수 있는 곳은 35가지가 되기 때문에 가능한 행마의 추적을 통해 최선의 움직임을 발견하는 데 백만 년의 시간이 걸리게 된다. 다음의 세 번의 움직임에 대한 가능한 모든 순서를 따르는 algorithm을 이용한다 해도 평균 18억 번의 움직임에 대한 분석이 필요하게 된다. 공식적인 체스 게임의 제한 시간은 5시간이므로 세계 챔피언이라 하더라도 algorithm에 의존하지 못하게 된다. 대신 그들은 heuristic이라는 문제 해결 전략에 의존한다.

다양한 문제에 이용될 수 있는 것으로 확인된 많은 일반적인 heuristic이 있다. 이러한 전략들에는 역행하여 작업하기, 하위 목표를 만들기, 그리고 은유와 비유를 이용하기 등이 포함된다.

역행하여 작업하기 (backtracking) : 목표로부터 현 상황을 역으로 추적하는 것을 포함한다. 예를 들어, 당신이 무엇인가를 잃어버렸다면 당신은 그것을 가지고 있었던 최후의 장소에서부터 역으로 추적하는 것이다.

하위 목표를 만들기 (problem reduction) : 문제를 보다 작은 것들로 쪼개어 보다 다루기 쉬운 문제들로 만드는 것을 말한다. 예를 들어 '오염을 어떻게 중지시킬것인가?'라는 질문은 오염의 종류, 오염원 등으로 나눌 수 있다. 일단 하위 목표가 확인되고 나면 그것들을 개별적으로 처리할 수 있다.

은유와 비유 (analogy) : 외견상으로는 다른 맥락 간에 유사점을 찾아보는 것이 포함된다. 예를 들어, "인간의 눈과 카메라가 어떻게 같은가"라는 질문은 카메라의 자동초점거리 맞추기와 자동노출체계를 개발하도록 유도하였다. 유사하게 어두운 동굴 속을 빠른 속도로 날아다니는 박쥐의 물체 탐지 능력은 음파탐지기나 레이더 같은 장비의 개발로 이어졌다.

3. 체스에서의 컴퓨터

3.1 Deep Blue

세계 체스대회에서 12년간 체스챔피언을 지낸 카스파로프와 IBM의 과학자들이 8년에 걸쳐 개발한 슈퍼컴퓨터, ‘딥 블루(Deep Blue)’의 체스시합은 IBM 사가 10억원의 상금을 걸고 특별기획 사업으로 추진함으로써 일어나게 되었다.

카스파로프의 연산능력은 500만개의 뇌신경세포에서 얻어지며, 1초에 2가지의 행마를 검토할 수 있고 보통 10수 앞을 내다볼 수 있다. 한편, ‘딥 블루(Deep Blue)’의 계산능력은 512개의 체스 전용칩의 보조를 받는 32개의 마이크로프로세서에서 얻어지며, 행마의 계산속도는 1초당 2억 회로써 최대 74수까지 미리 계산할 수 있다. 이 컴퓨터에는 과거 100년간 열린 주요 체스 경기의 기보와 유명 체스 선수들의 경기 스타일이 내장되어 있다.

96년 2월에 미국 필라델피아에서 열린 인간과 컴퓨터의 체스대결 제 1차 시합에서 인간은 3승2무1패로 승리하였다. 그러나 여기에서 있었던 1패를 두고 조만간 기계가 인간을 이길 것이라는 관측이 여러 곳에서 나오자 자존심이 상한 카스파로프는 전승을 올려 보이겠다고 IBM에 재대결을 제의하였으며, 그 결과 1년 후인 97년 5월 3일부터 5월 11일까지 미국 뉴욕에 있는 에퀴터블 센터에서 제 2차전이 벌어지게 되었다.

제 2차 체스대결의 결과는 2승3무1패로 컴퓨터의 승리였다. 첫 대국은 카스파로프가 따내었으나, 두 번째는 '딥 블루'가 이겼으며, 계속 이어진 3회의 대국은 팽팽한 무승부의 행진이었다. 그러나 5차 대국 바로 다음날 벌어진 마지막 대국에서 육체적인 피로와 심리적인 부담 속에 어이없는 실수를 저지른 카스파로프가 경기시작 1시간 만에 돌을 던진 것이다.

'딥 블루'가 수억 번의 수순을 정확히 선택하는 것은 '혁신적인 소프트웨어 기술과 강력한 병렬과정 처리능력의 콤비네이션'으로 풀이된다. 즉, 네 가지의 기본적인 기준인 체스말의 우선가치, 효과적인 행마, 왕의 안전성, 그리고 진행속도를 계산하는 것으로 둔다는 것이다.

3.2 바둑과 체스의 비교와 바둑연산의 한계성

인공지능을 연구하는 학자들은 체스에 이어 바둑 프로그램을 만드는데 관심을 모으고 있다. 바둑에는 학습과 의사 결정 방식, 전략적 사고, 지식 표현, 패턴 인식, 직관 등 인공지능연구의 핵심적인 과제들이 모두 관련되기 때문이다.

바둑은 체스와는 비교도 안 될 정도로 복잡한 지능을 요구한다. 바둑은 그 복잡도가 체스보다 천문학적으로 크기 때문이다. 체스의 게임 트리에는 10150정도의 변화 가능성이 존재한다. 그에 비하여 바둑의 게임 트리에는 10750정도의 가능성이 존재한다. 좀 더 정확하게 계산해보자. 바둑판은 3백61개의 점으로 이뤄져있다. 바둑에서 경우의 수를 단순하게 생각하면 처음에는 3백61가지, 그 다음은 3백60가지, 이렇게 계속 가짓수가 줄어간다. 이를 모두 계산하면 361x360x359x358x… = 361! ≒ 1.44X10768에 해당하는 경우수가 나온다. 바둑판이 대칭성을 띠기 때문에 대각선을 기준으로 서로 같은 경우가 발생하면 이를 반으로 줄여서 계산하고, 죽은 돌이 생기거나 패가 생겨서 경우수가 늘어날 때는 수를 증가시켜야 하는 특성까지 감안해도 여전히 엄청난 경우의 수가 존재한다. 단순히 비교했을 때 바둑의 경우의 수는 체스의 경우의 수의 10600배가 되는 것이다.

그리고 서로 다른 게임의 룰, 즉 체스에 비해 바둑에 자유도(degree of freedom)가 크기 때문에 바둑의 복잡성은 체스의 그것에 비해 더욱 커지게 된다. 체스는 우선 졸(卒)과 비숍, 나이트, 루크, 퀸 등 16개의 말이 움직이는 길이 정해져 있지만 바둑은 돌을 어디에 둘 지 알 수 없어 변수가 무궁무진하다. 전문가들은 경기 시작 후 4수를 둘 때까지 체스가 1백50만 가지의 ‘가능성’을 갖고 있는 반면 바둑은 16억 가지의 변화가 예상된다고 분석한다. 바둑은 또 5수까지의 변화의 수가 1017(10경, 1조의 1만 배)을 넘어서기 때문에 1초당 2억 번의 변화를 검토할 수 있는 슈퍼컴퓨터 ‘딥 블루’조차 약 16년 동안 장고해야 한수의 해답을 내놓을 수 있다. ‘딥 블루’가 1초에 74수를 읽는 것을 고려할 때 ‘딥 블루’가 3초 만에 하는 수읽기를 바둑에서 실현하면 현재 컴퓨터의 성능으로 3만년이 넘게 걸릴 것으로 예측된다.

또한 체스가 말을 모두 배치해놓고 유(有)에서 무(無)로 게임을 진행하지만 바둑은 거꾸로 무에서 유로 진행된다는 점도 변화기능성을 갈수록 기하급수적으로 상승하게 하는 요인이다.

이와 같이 단순 산술적인 계산으로 미루어보아도 현재의(2장에서 언급된) 알고리즘과 하드웨어의 성능으로는 절대적으로 바둑에서의 ‘딥 블루’는 존재할 수 없다.

3.3 바둑연산의 해결방안과 양자컴퓨터와의 관계

결국 컴퓨터 바둑에 대한 문제 해결의 접근 방식으로는 첫 번째로 알고리즘의 빠른 연산이 필요하다. 알고리즘 자체의 효율성도 중요하지만 하드웨어의 발달 또한 중요하다. 현재 널리 쓰이고 있는 컴퓨터(Classical Computer)는 어떤 복잡한 계산도, 결국 덧셈과 자리 옮김으로 쪼갠 다음에 처리하는 것이다. 이런 알고리즘의 계산에서는 제약이 발생한다.

Computational Complexity란 어떤 알고리즘이 수행되는데 필요한 공간적, 시간적인 요구를 분석하는 것이다. 어떤 계산을 수행하는데 있어서, 필요한 시간은 계산횟수에 비례한다. 이런 표현을 간단하게 Big-O 표기법(O는 orderly)으로 표현하면 다음과 같다.

일반적으로 덧셈 및 곱셈은 자릿수의 증가에 따라 필요한 시간이 O(log N) 으로 나타난다. 하지만 이런 연산은 우리가 요구하는 분야에 적용하기에는 아주 적은 부분일 뿐이다. 따라서 우리는 간단하게 보이는 몇가지 문제를 컴퓨터를 사용하여 계산하기에는 너무 시간이 오래 걸리는 경우가 있다. 이런 예 중에서 가장 흔히 볼 수 있는 것이 바로, 소인수분해와 곱셈의 관계이다. 두 소수를 서로 곱하는 것은 매우 단순한 알고리즘으로 해결할 수 있다. 또, 그 중 한 수를 알고 있을 경우, 다시 나누는 것도 곱셈과 거의 비슷한 속도로 해결할 수 있다. 하지만, 두 소수를 모르는 경우에 소인수분해하는 경우는 상당히 복잡해진다.

소인수분해(factoring) 문제는 현재 사용하는 암호화 기법의 가장 흔한 예이다. 즉 암호를 알고 있는 경우에는 해독이 간단하지만[O(log N)], 암호를 모르는 경우에는 해독을 하는데 오랜 시간이 걸린다[O(exp(N)]. 최근에 양자컴퓨터(Quantum Computer)에서 사용할 수 있는 소인수분해 알고리즘이 개발되었는데(Shor 알고리즘으로 알려져 있다.) O((logN)2+x))로 실행된다(x는 작다). 즉, 덧셈 및 곱셈의 속도로 연산이 가능한 것이다.

이와 같이 양자컴퓨팅을 이용하면 새로운 연산방법으로써 알고리즘의 빠른 동작을 가능하게 할 수 있다.

두 번째로 heuristic이 강조되어야 하겠다. 게임을 배울 수 있어야 하며 여러 가지 움직임에 따른 변화되는 조건에 적응하는 적응형 지능이 필요하다. 즉, 자기 스스로 '논리'와 '사고체계' 두 가지 능력을 모두 다 갖추어야 하는 것이다. heuristic한 접근 방식으로써 첫 걸음은 바둑 정석, 묘수풀이, 사활문제와 유명 바둑기사들의 경기 스타일과 기보들을 Knowledge base로 만들어서 입력해야 할 것이다. 또한 실제로 경기를 치름으로써 이에서 얻어지는 교훈과 정보를 효율적으로 저장해야 할 것이다. 이 heuristic 방식은 그 Data base가 많으면 많을수록 깊이 있는 수가 나올 수 있다.

문제는 이 base가 커지면 검색과 분석에 시간이 오래 걸리기 때문에 제약이 생긴다는 것이다. 고대 아프리카 퍼즐게임을 완벽하게 분석하는 데에 200Tb(200Gb의 1024배, 대략 CD 30만장 분량)의 data용량이 필요했다고 한다. 그렇다면 바둑의 data의 크기는 얼마나 커져야 할 것인가? 따라서 Knowledge base를 빠르게 검색할 수 있는 능력의 컴퓨팅이 필요한 것이다.

양자 컴퓨터의 빠른 연산 능력에 대해서는 다음 4장에서 자세히 언급하도록 하겠다.

4. 양자컴퓨터(Quantum Computer)

4.1 양자컴퓨터의 개요

4.1.1 양자컴퓨터(Quantum Computer)란?

연산 혹은 계산(computation)은 주어진 입력에 대하여 적절한 출력을 주는 함수라고 정의할 수 있다. 컴퓨터는 그 동작이 연산으로 해석될 수 있는 물리적 실체(physical object)를 의미한다. 이러한 정의에 근거한다면 양자컴퓨터란 양자계의 상태가 입력, 출력 등의 정보(information)로 해석될 수 있고, 또한 상태의 진화(evolution)가 연산으로 해석될 수 있는 실제적인 양자계라고 말할 수 있다.

이제 기존의 컴퓨터와 양자컴퓨터를 비교하여 살펴보도록 하자.

electric computer

quantum computer

information

Boolean (0, 1 ; bit)

Boolean (0, 1 ; qubit)

informatin implementation

voltage of wire

two-level system

bit

added or removed

conserved

reversibility

irreversible

reversible

gate

spatially arranged combination of transistors

time-ordered unitary operators

먼저 다루는 정보는 부울 대수로 둘 다 이진수를 기본으로 한다. 정보를 물리적인 실체에 구현하는 방법은 기존의 컴퓨터에서는 전선에 전압이 걸려있는가(1), 아닌가(0)로 표현하며 양자컴퓨터에서는 스핀 1/2 입자의 스핀상태가 up(1)인가 down(0)인가로 표현한다.

그런데 기존의 컴퓨터에서는 기본 게이트를 구성하고 전체 회로를 구성하는 데 있어 얼마든지 전선을 추가하거나 없앨 수 있다. 즉 정보의 최소 단위인 비트가 더해지거나 없어질 수 있는데 반하여 양자컴퓨터에서는 어떤 스핀계를 이용하던지 준비된 양자계의 evolution 동안 스핀을 없애거나 추가할 수 없으므로 큐빗의 수가 보존된다.

또한 기존의 컴퓨터의 경우 게이트는 공간적으로 구성된 전선과 트랜지스터의 조합으로 볼 수 있으며 정보는 공간적으로 지나가면서 연산되는 반면, 양자컴퓨터의 경우 게이트는 스핀계에 순차적으로 적용되는 유니터리 변환으로, 정보는 공간적으로 같은 곳(큐빗)에서 시간의 흐름에 따라 연산된다. 이때 양자계에서 우리가 인위적으로 가할 수 있는 모든 변환은 유니터리이고 시간에 대해 가역적(reversible)이다. 따라서 이 가역성 때문에 게이트를 설계할 때도 논리적으로 가역적으로 구성해야 하며 이는 큐빗의 수가 보존되는 것과도 일관성을 갖는다.

양자컴퓨터에서 8 bit CPU를 만든다면 기존의 컴퓨터에서는 CPU의 회로도를 바탕으로 기본 게이트들을 공간적으로 배열하는 것이겠지만, 양자컴퓨터에서는 8 개의 스핀 1/2 입자들이 전부이다. 이 8 개의 스핀에 8 bit 정보가 표현되고, 처리되며 CPU의 일반적인 기능은 이 스핀계에 가해지는 일련의 유니터리 변환들의 시간적 순서가 되는 것이다. 기존 컴퓨터에서 회로도가 중요하다면 양자컴퓨터에서는 유니터리 변환들의 순서(이것을 대응되는 개념으로 양자회로망;quantum network이라고 한다)가 중요하다.

4.1.2 큐빗(Qubit)

간단한 양자 시스템은 스핀 1/2의 1개의 입자이다. 이것의 베이시스 벡터(basis vector)는 스핀다운(spin down)(|↓>)과 스핀업(spin up)(|↑>)으로 각각 |0>와 |1>로 재표현할 수 있다. 그러한 입자의 상태는 ψ=α|0>+β|1>로 표현할 수 있는데 결론을 먼저 얘기하자면 양자컴퓨터의 계산단위인 큐빗(qubit)이란 바로 이런 각각의 확률을 가진 상태(state)들이 중첩상태(superposition of states)가 된 것을 말한다.

즉, 큐빗의 특징은 0 또는 1의 두 가지 값을 가질 수 있을 뿐 아니라 0과 1을 동시에 지닐 수 있다는 것이다. 이것은 양자역학의 상태가 중첩상태로 존재할 수 있기 때문에 가능하다. 양자역학의 언어로 다시 말하면, 큐빗이란 {|0>, |1>}을 orthogonal basis로 하는 2차원 Hilbert 공간에서의 상태를 의미한다. 따라서 큐빗의 일반적인 상태는 a|0>+b|1>과 같이 나타내며, 여기서 a, b는 |a|2 + |b|2 = 1인 관계를 만족하는 복소수이다.

현재 물리적으로 큐빗은 스핀이 1/2인 입자의 스핀 상태와 광자(photon)의 편광(polarization) 상태가 이용되고 있다. 양자 컴퓨터를 구현하려는 실험들은 스핀 1/2인 입자들의 스핀 상태를 이용하고 있고, 양자정보전송이나 양자암호체계 등의 분야에서의 실험들은 광자의 편광을 이용하고 있다.

4.2 연산능력

일반컴퓨터의 최소 연산단위인 비트(bit)에 대응하여 큐빗은 양자컴퓨터의 연산단위 즉, 퀀텀 비트(quantim bit)를 의미한다. 양자컴퓨터에서 1바이트는 8개나 16개의 큐빗이 모여서 이루어진다. 이것을 스핀 1/2의 입자가 n개 있을 때로 일반화시킨다면 기저상태는 2의 n제곱 개가 존재하게 되는데 n이 증가함에 따라 Hilbert 스페이스의 차원은 지수 함수적으로 증가하게 된다.

여기에 유니터리 오퍼레이션(unitary operation)이란 작업을 수행하는 것이 양자컴퓨터의 계산 과정의 핵심이라 할 수 있겠는데 8개의 큐빗을 한번에 계산하는 양자컴퓨터(일반 컴퓨터로 얘기하자면 8비트 컴퓨터)라면 2의 8승인 256개의 다른 계산을 동시에 처리할 수 있는 것을 의미한다.(이것을 양자 병렬계산(quantum parallelism)이라 한다.)

보통의 컴퓨터는 전류가 흐르는 상태를 1, 전류가 끊긴 상태를 0으로 하여 8비트 컴퓨터라면 256까지의 계산을 한 번에 하나씩 처리하게 되지만 양자컴퓨터는 그 지수만큼의 수를 동시에 처리하게 되니 얼마나 계산이 빠른지는 비교하기 어려울 정도로 월등한 차이를 나타내는 것이다.

예컨대 일반 64비트 컴퓨터의 경우 한 번에 1개의 64비트 숫자를 처리할 수 있지만 양자컴퓨터는 모든 64비트 숫자들을 단 한번에 처리한다. 즉 2^64 가지의 숫자를 모두 처리한다는 의미인데. 2의 64승은 18,446,744,073,709,551,616으로 64큐빗의 양자컴퓨터는 64비트 일반 컴퓨터보다 18,446,744,073,709,551,616 배만큼 빠르다고 볼 수 있는 것이다. 실로 놀라운 차이가 아닐 수 없다.

이 차이를 체감하기 위해 간단한 비교를 해보자면 일반 컴퓨터가 5천8백억 년 동안 계산해야 될 문제를 양자컴퓨터는 단 1초 만에 풀어낸다.(2의 64승 초를 3600(시간)x24(일)x365(년)으로 나눠보라)

5. 결 론

64큐빗 양자컴퓨터의 경우 기존 컴퓨터보다 1019배나 빠른 계산이 가능하다는 것은 대단한 장점이다. 사실 이처럼 빠른 속도라면 컴퓨터 바둑을 해결할 수 있을 것이라는 생각에서 시작한 고찰이기도 하다. 연구 과정에서 최종적으로 생각하게 된 것은 양자컴퓨터의 빠른 계산 능력과 새로운 계산 방식의 알고리즘은 어느 충분한 정도까지의 컴퓨터 바둑의 성능을 제공할 수 있다는 것이다. 물론 바둑 게임의 경우의 수가 양자컴퓨터의 속도의 수치보다도 훨씬 크기 때문에 속도에만 승부를 걸어서는 안 될 것이다. 앞서 말한바와 같이 잘 개발된 알고리즘과 방대한 Knowledge base를 기초로 하는 heuristic의 방법이 동원되어야 한다. 이는 ‘Deep Blue'가 빠른 하드웨어와 신뢰할만한 소프트웨어를 겸비했을 때 인간을 능가할만한 능력(어쨌든 결과론적으로는)을 보여줄 수 있었던 것과 마찬가지이다.

양자컴퓨터는 21세기를 이끌 10대 기술 중의 하나로 꼽히고 있고 'Science'지에도 자주 연구 성과가 보고되고 있는 분야이다. 미국의 MIT, Stanford 대학 연구소나 IBM 연구소 등에서 연구가 진행되고 있고 이곳 한국과학기술원 물리학과 이순칠 교수 연구실에서도 활발한 연구 중이다. 그럼에도 실용화까지에는 여전히 넘어야할 많은 기술적 장벽들이 앞에 있다. 연구자에 따라 예측이 다르지만 실용화하기까지에는 최소 20년 이상은 족히 걸릴 것으로 보이며 더욱이 개발 불가능이라는 부정적인 관점도 다수 존재한다.

사실 초기 컴퓨터 에니악(Eniac)의 시대에는 지금과 같은 기술의 수준은 절대 가능할 것 같지 않았다. 그러나 퍼스널 컴퓨터(PC)의 시대가 왔고 현재 그 시대를 뛰어넘는 유비쿼터스(Ubiquitous) 시대가 되었다. 양자컴퓨터의 실현의 결과론은 몇 십 년 후에나 펼쳐야겠지만 선택적인(희망적인) 귀납적 모델들에 초점을 맞추며 논문을 맺는다. 언젠가의 벌어질 컴퓨터와 인간 바둑 챔피언 - 물론 한국인일 것이다 - 사이의 바둑 시합을 기대한다.

참고문헌

[1] 박우석, 『바둑철학』, 동연, 2002

[2] Elaine Rich, 『인공지능』, 유석인 외 번역, 상조사, 1986, pp 125~144

[3] 이순칠, 「양자전산(Quantum Computation)」, 한국과학기술원 물리학과

[4] 이순칠, 「공개키 암호체계와 Shor 알고리듬」, 한국과학기술원 물리학과

[5] 김재훈 외 공저, 「Quantum Computation」, 연세대학교 물리학과

 

집" 개념의 이해

 

'집'이란 ?  

한국기원 규칙 제14조 (집) :  

살아있는 돌로 에워싼 빈집을 집이라고하며,,
점 하나가 한집이 된다.

→ 집 이외의 빈점을 공배라고 한다.       


집이 무엇인가를 정확히 하기 위해서 조금 다른 눈으로 바라보자.

"살아 있는 돌로 에워싼 빈집" 여기서 '빈집'이라는 개념이 사용되고 있다.

빈집과 집은 어떤 차이가 있는가?          

 →  차이가 없다.
    
     즉, 비어 있는 집이다.

     그런데 집은 본래 비어 있어야만 한다.

집은 (한 종류의) 돌둑에 절대적으로 의존적이다.

다시 말해서 돌둑이 없이는 집을 생각할 수도 없다는 것이다.

이처럼 집 개념이 돌둑과 밀접한 관계를 맺고 있기 때문에,

집은 서로간의 상호작용 속에서 한 종류의 둘둑에 의해서 생산된 2차적인 결과물이다.

이러한 2차성의 결과로 집이 여러가지 의미를 포함하게 되었다고 본다.


* 2차성의 결과로서 "집" 개념의 종류 :

  1.  평가의 단위 ;  여기에는 살아 있는 돌, 죽은 돌, 집, 빈자리가 포함된다. 단, 공배는 제외...  

  2.  삶의 근거 ;  돌을 살아 있게 하는 근거로 가정하지만 실제로 그러한 기능을 하지 않는 경우가 있다.

  3.  삶의 단위 :  돌이 살아 있기 위해서 갖추어야 하는 최소 단위로서 "집(눈)"이라고 한다.


평가의 문제를 제외하고나면 집이란 삶의 근거이자 삶의 단위이다.

그렇다면 돌둑의 "삶"은 무엇인가?

혹은 "살아 있다"는 것은 무엇을 뜻하고 있는가?

집의 문제가 삶이 무엇인가의 문제로 바뀌어야 함을 알 수 있다.

즉, "삶"이 규정되고 난 이후에 "집"이 규정될 수 있다.

"삶"이란?

한국기원 규칙 제11조 (삶) :
 
독립된 집(제8조에 의한 착수금지구역)을 2개 이상 갖고 있거나,,
교대로 착수해서 2개 이상의 독립된 집을 확보할 수 있는 일련의 돌들이 살아 있다고 한다.
또, 잡혀 있는 모양을 하고는 있으나 상대방이 따낼 수 없는 돌은 살아 있는 돌이다.

   → 상대방의 착수로 들어낼 수 없으()므로 살아 있는 돌이다.


 독립된 두개의 집으로 삶을 정의할 수 없다.

왜냐하면 '삶'이 먼저 정의되고 난 후에야 '집'을 규정할 수 있기 때문이다.

그렇다면 남는 것은 "상대방의 착수로 들어 낼 수 없으면, 살아 있다"라고 해야 한다.

'상대방의 착수로 들어 낼 수 없다'는 것은 어떤 뜻일까?

결국 상대방이 어떻게든지 착수할 수 없거나, 착수를 하더라도 들어 낼 수 없다는 것이다.

들어내기 위해서는 이웃하는 빈 자리가 없을 때이므로, 돌둑이 단 하나의 이음자리를 가지고 있어야 한다.

그런데 돌둑이 둘 이상의 이음자리를 가지고 있으면, 착수를 하더라도 들어낼 수 없다.

상대방의 착수로 들어낼 수 없는 경우를, 돌둑이 둘 이상의 빈 자리와 이웃하는 경우로, 표현할 수 있다.

돌둑에 이웃한 두개의 빈 자리에 어떤 이유로 상대가 착수할 수 없으면, 살아 있는 것이다.


*
돌둑을 들어내는 이유는 이웃하는 빈 자리가 없기 때문이다.

돌둑이 빈 자리와 이웃하지 않으면, 죽음이다.

돌둑이 죽으면, 바둑판에서 들어 낸다.

한국기원 규칙 제12조 (죽음) :

삶을 증명할 수 없는 돌을 죽은 돌이라고 한다.

한편, 단 하나의 자리와 이웃하고 있는 돌둑은 살아 있는가?

위의 규정에 따르자면 죽어 있다.

그런데 죽은 돌은 바둑판에서 들어내야 한다.

진행규칙을 적용하는 과정과 비교해 보면 하나의 자리와 이웃한 돌둑도 살아 있다.

제 12조는 돌둑의 직접적인 죽음 뿐만 아니라, (삶과 연관된) 간접적인 죽음도 포함하여 규정하고 있다.

그런데 정작 직접적인 죽음에 대해서는 그 규정을 감추어 놓고 있다.

따라서 직접적인 죽음의 관점에서는 "빈자리와 이웃한 모든 돌둑은 살아 있다."가 된다.

즉, 바둑판 위의 모든 돌둑이 살아 있다.

그리고 돌둑이 죽으면, 바둑판에서 들어낸다(낳음).

한국기원 규칙 제7조 (돌의 존재) :

착수된 돌은 그 돌에 인접하여 빈점이 있는 한 존재하며
(?),,

빈점이 없는 돌은 존재할 수 없으므로
(?),,

바둑판에서 들어낸다
(?).

 → 따낸 시점에서 착수가 완료되어 빈점이 생기기 때문에 백의 착수가 가능하다.


살아 있는 돌이란? 

빈 자리와 이웃한 모든 돌둑은 살아 있다.

*
그렇다면 우리가 지금까지 이해하고 있었던 "삶"이란 무엇인가?

간단히 정의하자면, 바둑진행규칙밭의 추구로부터 자유로운 돌둑(들)이다.

그리고
"집"이란 ? 

'진행규칙의 적용 결과로 한 종류의 돌둑에만 허용되는 밭의 추구가능성이다'라고 할 수 있다.

 

[=] 대만바둑규칙


1 . 백여차례 수정을 거친 계점제

현재 대만에서 시행되고 있는 바둑룰인 계점제는 1974년 3월31일 대만 바둑규칙연구위원회가 결정한 제1차 바둑룰을 기초로 1986년 제11차까지 12년간 1백 차례의 수정을 거쳐 완성된 룰을 말한다.

바둑역사 4천여년을 통해 15세기 이전까지 중국에서 사용했던 바둑룰은 계로제(計路制)라 했다. 이것이 일본에 전해진 후부터 일본에서는 路가 目으로 바꾼 것이다. 또한 중국에서는 16세기 이후 이것을 計子制로 바뀌었다. 즉, 우리식으로 家(집)에 해당하는 말이 일본식으로 目, 중국식으로는 子, 대만식으로는 點에 각각 해당된다고 보면 된다. 따라서 우리식으로 몇집승을 일본에서는 몇目승, 중국에서는 몇子승, 대만에서는 몇點승이라는 각각의 다른 표현을 쓰고 있는 것이다.

어렵게 생각할 것 없이 대만식룰도 두는 방식에 있어서는 앞에서 설명한 중국식룰과 거의 같다고 보면 될 것이다. 단지 틀린 것은 계가방식에서의 차이점인데, 대만에서는 계가방식으로 전만법(모두 메꾼다는 뜻)을 사용하고 있다.

2 . 대만식의 집차이는 홀수

구체적으로 전만법에 대하여 설명해보면 흑백이 각각 180개의 돌을 갖고 바둑을 둔다. 바둑이 끝나면 흑백알 전부로 각자 자기 집을 메꿔 나간다. (상대방의 사석은 상대방의 집에 메꾼다) 그러면 최후에는 눈금하나가 남게 되므로 승부(집차이)는 반드시 홀수로 나게 된다.

대만식룰에서는 덤이 8집이다. 이것은 계점제를 만든 장본인이며 대만 바둑계의 대부라 할 수 있는 應昌期씨가 1978년 한해동안 일본의 모든 신문기보 1971국을 통계한 뒤 연구한 덤이라 한다. 이 통계에 의하면 일본식 덤 5집반으로 두었을 때 흑의 승률은 54%를 상회한다고 한다. (따라서 백의 승률은 46% 정도) 또한 만약 흑의 덤이 8집이었다고 가정할 때 흑의 승률은 49.3%, 덤이 6집일 때는 흑의 승률이 53.12%라는 통계학적 근거에 의해 가장 합리적이며 과학적인 덤으로 8집을 정한 것이라고 알려져 있다.
그러면 대만식 계가법(전만법)은 어떤 것인지 살펴보자.

 

3 . 전만법(塡滿法)



<1도>는 대만의 기사끼리 둔 바둑으로 陳長淸名人(흑)과 陳永安6品과의 대국으로
우리식으로는 종국장면.



<2도>는 흑백간 공배를 메꿔 완전종국한 후 쌍방 사석을 들어내고 각자의 돌 180개 중 남은 돌로 각자 자기 집을 메꾼 그림이다. 우상귀 흑집속의 백넉점(◇)은 덤(8집:백집에 메꿀 백 넉점을 반대로 자기집에 메꿨으므로)을 표시하며 좌상귀 백집속의 흑 두점(◆)은 백의 사석. 따라서 백집(3집)+사석(2집)=5집을 백이 이긴 결과이다.

참고로 일본식 덤 5집반(대만식으로는 6집)으로 위와 같은 전만법으로 했을 때 일본식의 반집, 한집반의 차이는 대만식으로 1집차이. 2집반, 3집반은 3집. 4집반은 5집등으로 나타난다. 대만식도 중국식과 같이 공배를 다툰다던가 자기집에 가일수하는 것이 전혀 손해가 아니라는 측면에서는 상통한다. 왜냐하면 공배를 상대방보다 하나 더 메꿈으로써 나중에 자기돌로 자기집을 메꿀 때 한집 이득이며, 가일수를 아무리 여러 번 했어도 결국은 그 가일수한 돌로 자기집을 메꿔야 하기 때문이다.

★ 대만식으로 4패, 순환패는 빅 3패, 장생은 단패

 

  * 끝으로 대만식룰이 일본식과 크게 다른 몇 가지 점을 소개하겠다.





일본식룰에서는 <1도>3패, <2도>4패, <3도>순환패, <4도> 장생과 같은 경우 쌍방 한쪽에서 양보를 하지 않을 경우 판 전체를 무승부로 한다.

그러나 대만식룰은 이것과 전연 다른룰을 채책하고 있다.

즉, <2도>4패와 <3도>순환패는 한번의 반복은 허용하나 그 이상의 동형반복은 금하고 있다.즉,
<5도> 백4까지, <6도>백4까지 허용한 후 그 이상의 착수를 금한다. 그래서 이것을 빅으로 처리한다.

즉 대만식에서는 이 자체가 빅일 뿐 일본식처럼 판전체를 무승부를 하지는 않는다.


즉, <8도> 흑1로 따냈을 때 백은 'A'의 곳을 직접 따낼 수 없고 다른 곳에 팻감을 쓴 후 'A'B ■ 의 곳을 딸 수 있다. 그런 다음 흑도 'B'를 두기 위해서는 팻감을 쓴 후에 따내야 한다. 즉 3패나 장생의 경우 대만식으로는 단패가 난 것과 같다고 생각하면 된다.

공배의 소유권도 특이하다. 흑백간 서로 놓을 수 없는 공간에 관한 소유권 문제는 계점제 규칙 제2장 7조에서 '그 공간(점)을 둘러싸고 있는 최소한의 가장 인접해 있는 돌의 수에 비례하여 나누어 갖는다'고 명시되어 있다.

* 예를들어 1도와 2도를 보자.

빅으로 이뤄진 공간 <1도>의 경우 공배의 곳과 <2도>의 공배의 처리문제인데, <1도>의 공배는 흑돌(■) 한 개와 백돌(■) 두 개로 이루어졌으므로 백의 소유권은 ⅔가 되며 흑의 소유권은⅓이 된다. 그래서 <1도>의 공배 소유권은 백의 소유권 ⅔ - 흑의 소유권은 ⅓ = 백⅓ 점인 것이다. 참고로 공배와 대각선으로 인접되어 있는 ▲와 △는 '가장 근접한 돌이 아니다.

<2도>는 <1도>와 달리 공간이 두개 있는 경우는 소유권을 따로 계산하는 것이 아니라 동시에 계산한다. 즉, 그림에서 보듯 흑돌(■) 세 개와 백돌(■) 두 개로 둘러싸여 있으므로 이 두 공간은 흑의 소유권 3/5 - 백의 소유권 2/5 = 흑1/5점이 되는 것이다. 그래서 <1도>나 <2도> 와 같은 빅이나 오는 판은 승부가 홀수가 아닌 분수로 나게 된다.

실전에서도 그런 판이 등장한 적이 있다. 바둑황제 조훈현 九단이 우승했던 제1회 응씨배 16강 전에서 조훈현 九단 : 고바야시 사토루(小林光一) 九단 간의 대국. 반면으로는 흑을 든 조九단이 9점을 남겼다.

그래서 덤 8점을 제외하면 흑 1점인데, 그림에서 보듯 귀쪽에서 빅이 발생해서 공간 두 곳('라'와 '마'의 곳)의 소유권 문제가 발생했던 것.

앞서 설명했듯이 <3도> 의 '라'의 곳은 흑의 소유권 3/4 - 백의 소유권 1/4 = 흑2/4 = 흑1/2점이며, 같은 방법으로 '마'의 곳은 흑의 소유권 2/3 - 1/3 = 흑1/3점이다.

결과적으로 '라'와 '마'를 더하면 흑1/2 + 흑1/3 = 흑5/6점이다. 그래서 최종 결과는 반면 흑9점 + '라' '마' 공배 흑5/6점 - 덤 8점 = 흑1 + 5/6점승이었다.


 

4

. 제한시간에 관한 규정
지금까지는 전만법을 통한 반상에서의 계가 방식을 알아 보았다. 그러나 반외(盤外)적인 요소로 제한시간과 덤이 우리와 어떻게 다른가 하는 것을 살펴보자.

* 첫째, 대국하는 선수에게 주어지는 제한시간은 각 3시간30분 씩으로 같이 주어지지만 제한시간 이 경과된 후에는 초읽기 대신 연장 시간을 주는 것이 특이한 방식이다. 1회의 연장 시간은 35분 이내이고 2점의 벌점을 받게 된다. 또 연장시간은 3회(1시간45분, 6점 벌점)까지 사용할 수 있고 4회 다시 말해서 1시간45분을 초과하면 시간패로 처리된다.

참고도 제한시간에 대해 부연하자면 3시간 30분이 경과되기 10분, 5분, 1분 전에 각각 시계에서 자동으로 남은 시간을 깨닫게 해 준다. 연장시간에서 받게 되는 점은 최소 2점으로부터 최대 6점까지 승부의 큰 변수로 작용될 수 있다.

* 둘째, 대만의 8점의 덤을 단순히 우리식으로 8집으로 적용시킬 수 없다는 점이다. 덤 8점
은 특별한 경우를 제외하고는 일반적으로 우리식으로 환산하면 7집반과 같다. 특별한 경우란 앞서언급한 빅이 나올 경우 등을 말하는데, 이때는 7집반에서 '+' 또는 '-' '알파'가 생기게 된다.

(앞서 언급한 조훈현 九단의 1 + 5/6집승을 상기하자)

그런데 이 공배로 인하여 발생하는 점(집)은 일반적으로 1집 이내가 보통이다. 물론 이론적으로는 1집을 넘을 수도 있지만. 그리고 빅이 없다고 볼 때 홀수 승부가 나므로 결과는 1집,3집,5집, …… 식으로 난다. 그리고 덤의 차이(응씨룰의 8점을 7집반으로 보면, 우리식의 5집반과 2집)가 있으므로 승부가 뒤바뀌는 경우도 발생한다. 중요한 것은 어떤 룰로 두든지 룰에 대한 확실한 지식이 없으면 대국을 능동적으로 펼칠 수가 없다는 것이다.

[자료출처;월간 바둑 1987년 9월호] 발췌


자료출처 엠파스 ; http://baduk.game.empas.com/baduk/baduk_rule1.asp


다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼