퍼온~바둑..!/관련 자료들~

[=] 바둑은 계산이 아니다!

온울에 2008. 5. 29. 12:11
암튼 게임이론을 확률에 의한 추리, 반사실적 추론 및 계산과 구별하면, 바둑의 의미가 강해진다고 봅니다. 게임은 후자를 포함하도 남는 전략이 뭔지는 몰라도 있는 것 같고, 그래서 바둑 게임의 전략이란 후자를 다 합해도 얻어질 수 없다고 봅니다. 게임의 전략과 후자의 것들에 의한 결론들 사이의 간격이 작을 수록, 그런 게임은 컴퓨터로 프로그래밍 가능합니다. 그리고 프로그램이 프로와 맞먹을 수 있습니다.

체스의 경우가 그런데, 체스는 플레이들이 서로 판을 보고 경기를 합니다. 반면에 포커는 상대편의 패를 볼 수 없습니다. 프로 포커를 연속 해서 이기는 컴퓨터 프로그램은 없습니다. 적어도 게임과 계산을 구별할 줄아는 수학자는 현재 프로그래밍 기술로 아예 프로 포커를 이기기 위한 프로그래밍 구성을 시도하지 않습니다.

그런데 저는 바둑을 두지 못하지만 이놈은 정말 묘합니다. 체스처럼 판에서 특정 규칙을 근거로 하는 경기인데도 프로기사를 이길 수 있는 컴퓨터 프로그래밍은 존재하지 않습니다. 미래의 컴퓨터를 운운하기 전에 바둑에는 뭔가 다른 맛이 있습니다. 그것을 심리적인 것으로 돌리기보다는 시각을 바꾸어 발견할 수 있는 뭔가로 설정해야 합니다.

체스는 기본적으로 장기알의 이동과 관련됩니다. 무작위적?이동이 아니라 규칙이 있죠. 바둑은 그 이동이라는 규칙이 딱 하나밖에 없습니다. 좌우위아래 한 칸씩 이동할 수 있다는 것밖에 없습니다. 그런데 왜 프로 기사를 이기는 바둑 프로그램은 없을까?

물론 수싸움의 계산이 필요하지만 바둑은 그것 이상의 뭔가 있습니다. 지금은 그냥 "패턴 게임"이라고만 말하겠습니다. 전쟁게임을 바둑과 비교하려면 일단은 이렇게 해야합니다.

1. 전쟁 상황은 사방이 막힌 들판이다.
2. 군인은 적이 한 명을 투입할 때 나도 한 명 투입하는 식으로 반복된다.
3. 각 군인이 한번에 이동할 수 있는 반경은 상하좌우 일정 폭밖에 없다.
4. 각 군인을 들판에 투입하는 방식은 헬리콥터로 임의의 장소에 투하하는 것이다.
5. 더 많은 들판을 차지한 부대가 승리하는 것이다.
6. 내가 일단 차지한 들판의 영역, 곧 잠재적으로 나의 군인들로만 꽉 채워진 영역은 영원히 나의 것이다. 이점은 적에게도 해당한다.
6. 나도 승부에 관해서는 이겨야 하고, 적도 마찬가지다.

이런 상황에서 승리하려면 왜 첫 번째 군인을 들판 중앙에 투여하는 것이 비효과적인가요? 바둑보면 그런 식으로 첫 알을 두는 경우는 없고, 그런 식의 전략은 안 좋다고 역사적으로 판가름났기 때문입니다. 일단 언급한 질문부터 따져봅시다.

답은 간단합니다. 사방이 막힌 들판이라 그렇습니다. 우선 안정된 땅을 얻으면 그 땅이 다른 땅을 얻는 기지가 됩니다. 이것을 폰노이만의 초기 zero-sum 게임에 중요한 전략인 Minimax와 비교하는 것은 매우 흥미로울 겁니다. 게임 이론에서 자기 자신과의 싸움이라는 변수를 집어넣기 위해 인지와 경험란에 게임이론 시리즈를 퀴즈와 함께 진행하겠습니다. 그러면서 게임에 어떻게 자기와의 싸움이라는 변수가 어떻게 설정될 수 있는지 함께 고민합시다.

그런데 사방이 막혔다는 초기 환경 조건이 알을 움직이는 것과 같은 규칙인가요? 체스에서 판은 규칙에 의해 규정될 수 있는 어떤 것 혹은 규칙적 이동 논리에 의해 얻어지는 어떤 것입니다. (원하시면 나중에 왜 그런지 증명할 수 있습니다.) 반면에 바둑판은 계산 영역 밖의 게임 환경 조건과 같은 것입니다.

자 이쯤되면 환경 구조가 인간 합리성의 중요한 측면이라는 주장이 뭐가 이상합니까? 바둑은 상식에 의거한 환경과 합리성에 대한 나의 신념을 증명해 주는 게임이라 자신합니다.

- 상황에 합당함으로서 합리성 개념은 상식입니다. 서양의 경우도 근대를 빼면 다 이런 합리성 개념이 우세합니다. 무 인용문만 들겠습니다.
"Circumstance is the proof whereby an argument is given credibility and authority." (Cicero, De Inventione I, p. 34)
"Speaking in a formal sense alone, the just and the good are always and everywhere the same, since principles of natural reason are immutable. But, in the material sense, justice and goodness are not the same everywhere and always ... this is so, because of the mutability of human nature, the diverse conditions of persons and their affairs and the differences of time and place." (Aquinas, Questiones Disputatae de Malo)
동양의 경우 합리성과 상황을 연관 시키는 것은 시의적절 혹은 시중 등 여러 개념에서 발견됩니다. 주역에서 그런 상황 의존적적인 합리성이 우리에게 보여줄 수 있는 가장 좋은 전략은 뭘까요?

"이간", 곧 상황 속에서 가장 손쉬운 길입니다. 한자를 몰라 한자는 생략!

- 착한왕 : 진화는 그냥 목적 없는 자연적인 것일 뿐입니다.
그러나 결과는 항상 이간의 길을 보여줍니다.
왜냐, 자연의 흐름이 곧 이간이니까!
이간에는 불필요한 것은 아무것도 없습니다.

이 부분은 그냥 흥얼 거린 소리이니 별 개의치 마시길!

- 착한왕 :  던진 김에 화두 하나 더-,.-
밖을 보지 않은 채 내부만 보는자는 진리를 알 수 없다.
환경과 변이를 고려하지 않은 채 유전자만 언급하는 인간은 생물학자가 아니다.

- 만주인: 한칸씩 상하좌우로 간다는 규칙은 바둑이 아니라 오목에 해당하는 것이 아닐런지요? 사실 바둑은 장기의 말이 가는 법과 같은 규칙 자체가 존재하지 않습니다. 바둑판의 경우의 수는 19*19=361부터 시작합니다. 처음 두는 사람이 이 361중에 하나의 경우의 수를 선택할 수 있죠. 그 다음 사람은 361-1인 360가지, 그리고 그 다음 수는 360-1인 359가지... 이런 식이죠. 그러나, 이 모든 경우의 수가 가치있는 것은 아닙니다. 바둑에서 가장 중요한 규칙은 상대방보다 더 많은 집을 짓는 것이고, 이 집을 형성하는 규칙은 첫째 사방이 막힌 폐곡선을 형성한다는 것이죠. 그런데 여기에 예외가 있으니, 바둑판의 최변연을 막힌 폐곡선으로 인정해 준다는 거죠. 따라서 여기서 중앙에서 집을 짓게 되는 경우의 수 외에 한 면이 최변연인 경우, 두면이 최변연인 경우, 세면이 최변연인 경우의 수가 존재할 수 있습니다. 다만, 여기서 효율의 문제를 따지자면 최변연의 수가 많을 수록 바둑판 내에 형성해야 하는 바둑돌의 수를 절약할 수 있다는 점. 그러나 최변연의 수가 점점 더 많아질 수록 형성할 수 있는 폐곡선의 면적이 줄어든다는 양립하는 특성을 고려해야 하죠. 여기서 마지막으로 또 하나의 보조규칙! 집을 만드는데 실패한 상대방의 돌을 자신의 돌로 형성한 폐곡선 내에 포함하게 될 경우 그 상대방의 돌들을 죽었다고 선언하고 바둑판에서 덜어내면서 자신의 집수를 늘리는 동시에 상대방의 집의 수를 감소시키는 계산을 할 수 있다는 게 있죠. 이 세가지 규칙이 복합적으로 어우러지는 것이 바로 바둑의 규칙이라 할 수 있겠죠.
  여기서 가장 중요한 규칙 하나를 누락시켰네요. 즉 의미있는 폐곡선을 어떻게 인정하느냐의 규칙입니다. 바둑돌들의 연쇄의 경우의 수는 상하좌우와 네방향의 사선방향, 여덟가지의 경우의 수가 있습니다. 바둑에서는 상하좌우 네가지 경우의 수를 폐곡선을 형성하는 연쇄로 규정하고, 사선방향의 연쇄를 상대방 바둑돌을 사석으로 만들 수 있는 폐곡선을 형성하는 연쇄로 규정합니다. 이 두 이질적인 규칙이 교직하는 것으로 바둑게임은 진행됩니다. 바둑이 장기와 다른 점은 자신이 행한 경우의 수는 상대방이 행할 수 있는 경우의 수를 변동시키게 된다는 것이고, 또한 자신 역시 상대방이 행한 경우의 수에 의해 결정된다는 거죠. 상대방의 돌과 접촉하게 되는 경우 일면 오목게임과 유사해지는 듯 하지만, 결정적인 차이는 오목은 단일한 규칙에 의해 지배되지만, 바둑은 두가지 규칙에 모두 지배된다는 점이 있겠죠. 또 하나 오목과는 달리 바둑은 서로 접촉하지 않더라도 서로 영향을 받는다는 점이죠. 361개의 공간은 사석이 없는 한(사석을 만들어내는 것도 또 하나의 요소이긴 합니다만) 상대방이 행하는 수에 의해 계속 차감되죠.
  어떤 의미에서 본다면 바둑게임 역시 일종의 계산에 의해 진행된다고 볼 수는 있을 것 같습니다. 바둑 역시 게임이 될 수 있기 위해서는 경기자 양자간에 미리 약속된 규칙이 존재해야 하니까요. 다만, 장기나 체스와는 차이점이라면 이런 게 아닐까요? 일단 경우의 수 자체가 361!이니만큼 엄청나게 많을 뿐더러, 몇개의 이질적인 규칙이 조합됨으로서 경우의 수를 더 늘릴 뿐더러, 마지막으로는 게임을 하는 양자 모두 상대방의 수에 의해 자신이 행할 수 있는 경우의 수를 서로 규정당하게 되는 경우의 수 또한 체스나 장기에 비할 수 없을 만큼 많고 절대적이지 때문은 아닐까요? 계산과 다르다고 하심은 혹여 이러한 복합적인 연산을 다룰 수 있는 수학이 아직 존재하지 않기 때문... 아니 그런 복합연산 자체를 계산으로 인정하는 수학이 없기 때문은 아닐까요?
  참 여기서 경우의 수를 따질때 빼먹은 사항이 또 있군요. 의미있는 폐곡선을 형성하는 가지의 수를 여덟가지라고 말한 것은 한번의 대국때의 일입니다. 계속 게임을 하게 될 경우 형성될 수 있는 경우의 수도 계산해 보죠. 하나의 돌에 인접해서 또 하나의 돌을 놓아 연속된 하나의 선분을 형성하게 되면 다음번 형성할 수 있는 경우의 수는 하나가 줄게 되죠? 인접해 있는 다른 돌이 없을 경우, 8-1인 일곱가지의 경우의 수가 나옵니다. 그런데, 이것은 직선만을 형성할 경우 그런 거고, 만약 ㄱ자 도형을 형성하는 경우는 여기서 다시 하나가 줄어 여섯이 됩니다. ㅁ자 도형을 형성하는 경우의 수는 또 다시 하나가 줄어 다섯이 되겠죠. 이렇게 경우의 수가 가변적인 것은 주변 상황에 의해 결정되는 것인데, 거기서 고려해야 할 상황은 바로 자신이 과거에 행한 수의 결과라는 미묘한 점이 있습니다. 물론 여기에 상대방의 돌과 맞부딪힐 경우의 수를 고려하면 상황은 더 복잡합니다만... 어쨌거나, 바둑 역시 계산이란 용어를 어떻게 정의하느냐에 따라 달리 말할 수 있겠지만, 무작위의 사건은 아니라는 점은 틀림없죠. 이런 주제를 논하는 수학이 혹여 있을 것도 같습니다만...
  바둑도 컴퓨터 프로그램은 있죠. 하지만, 이 프로그램의 경우 알고리즘은 위에서 말한 각 경우의 수를 모두 계산하는 방식이아니라, 정석을 모아 놓은 기보와 같이 일종의 모범적인 게임의 경우를 모아 놓은 데이터베이스에서 하나를 선택하는 방식이라는 말을 어디서 들은 바 있습니다. 그럴 경우 계산의 문제는 한결 단순해 집니다만, 바둑을 정석대로 두는 사람이야말로 바보라는 말이 있듯이 곧 한계에 봉착하죠. 컴퓨터 바둑은 너무 싱거워서 몇번 두어 보면 싫증이 나곤 하죠. 컴퓨터와 인간이 바둑을 두는 방식은 이렇게 이질적이죠. 체스의 경우는? 그렇지는 않은 것 같습니다.

- 착한왕: 바로 폐곡선을 만드는 것을 계산으로만 취급하기 때문에 바둑 프로그래밍이 잘 안되겠죠.
제가 말하는 원리는 다릅니다. 암튼 게임이론 수학가들의 명언: 게임은 계산이 아니다!
체스는 알 규칙에 따른 알 이동의 모든 가능성이 정해서 승부가 나는 제로 게임으로 시뮬레이션하면 가능한 판 모습이 구현됩니다. 하지만 이 경우 그 판이 사각이든 운형이든 게임의 임자는 규칙뿐입니다.

- Gravi : Reversi라는 게임을 코딩해서 만들어 본적이 있는데, 완벽한 최적해를 찾지 않더라도 인간이 이기는 경우가 거의 없더군요.  체스도 쉽지는 않을 겁니다. 지난번 블루딥 같은 거는 인간이라서 생기는 또 다른 요소를 무시하고 경기를 했죠-_- 인간은 피로도가 쌓이면 GG입니다.
  Gravi: 덤으로 저도 게임과 계산은 다를 수 밖에 없다고 생각합니다. 어차피 게임은 인간을 중심으로 고려되는 문제니까요. 기계들 끼리의 게임이라면 rule에 따른 정확한 결과가 존재하는 산수문제로 바뀌겠죠

- 만주인: 게임은 목적을 가졌다는 점에서 단순 계산과는 다를 겁니다. 그러나, 만약 그것을 하나의 계산으로 취급할 수 있는 수학이 있다면 인공지능의 개발에 큰 기여가 되지 않을런지요? 게임은 상대가 존재하는 것이고, 목적은 그 상대를 이기는 거죠. 문제는 그 상대 역시 자신과 똑같은 목적을 가지고 있는 것이고, 또 그러한 상대방의 조치에 의해 자신이 행할 조치의 경우의 수가 제한된다는 것이겠죠. 또한 자신과 상대방이라는 두 요소 외에 환경이라는 제3의 요소가 이 두 주체가 행할 수 있는 경우의 수를 제한한다는 것이겠죠. 물론 가장 큰 제한요소는 바로 상대방을 이기겠다는 목적이 아니겠습니까? 물론 양자간에 약속된 규칙은 가장 큰 제한요소겠죠. 사람은 이런 게임을 할 때 무작위로 아무 경우의 수나 선택해 보는 것이 아니고, 몇수 앞의 경우의 수를 미리 추산해 보죠. 이런 추산에 의해 당장의 선택이 결정되는데, 이런 추산이 존재한다는 것을 보아서는 계산이란 과정 자체가 존재하지 않는다는 것은 아닌 듯 합니다. 컴퓨터의 한계라는 것은 이 추산이라는 과정 자체도 숙련된 인간에 비해서는 한참 저급하다는 것이 있겠지만, 다른 질적인 차이도 있기 때문일 듯 합니다. 인간의 추리과정과 컴퓨터의 연산과정의 차이라... 뭐 연산과정이 병렬로 이루어지니 직렬로 이루어지니 하는 뭐 그런 게 관계되는 것 아닐런지요? 어떤 과학잡지를 보면 지금까지의 컴퓨터의 연산방식은 직렬방식인데, 이게 병렬방식으로 바뀌면 인간의 사고과정을 모방할 수 있을 거라는 이야기가 있더군요. 저야 깊이 들어가보면 정작 아는 건 없습니다만.... 기계와 인간과의 가장 큰 차이는 목적이 있느냐 없느냐, 즉 영혼이 있느냐 없느냐의 문제로 귀결되는 것인가요?

- 착한왕 : 그런 만능 수학은 없구요, 일단 인지와 경험란에 이어질 퀴즈들 및 설명을 쫓아가면 그 이유는 나옵니다. 지금 만주인님 말에는 단서에 근거해 고려한다는 것과 인공지능에서 말하는 계산(computation)이 혼선이 있습니다. 그리고 병렬컴터 가 더 효과적이지만 그런 애기는 확증된 것은 아니구요, 목적이 왜 영혼을 존재햐야 하는지? 그럴 이유가 있나요? 증거 혹은 환경의 제약 없는 순수 목적이라면 몰라도 진화상 문제 풀기 과정에서 다듬어진 두뇌 기능에서 목적과 선택은 제한적이고 그렇다고 하여 두뇌 기능이 수동적인 것도 아닙니다.

- 만주인 : 데카르트 철학에서 영혼이라는 말은 귀신이나 혼령을 가리키는 말은 아닌 듯 하더군요. 정신이라고도 번역하기도 하는데, 인체라는 기계를 부리는 주체 정도라고 말할 수 있을까요? 그런데 그 주체는 이상적으로 말하자면 자유의지를 가진 존재로서 타 존재의 결과가 아니라 타 존재의 원인이 되는 실체가 되지 않습니까? 제1원인인 신이 그렇듯이 말이죠. 인간의 행동 심지어는 추론작용까지도 그대로 모방해내는 사이보그라도 자기 목적성이 없다면 그저 기계일 뿐, 즉 도구적 존재일 뿐이죠. 그런 면에서 SF소설이나 영화에서 영혼을 가지게 된 사이보그에 대해 다루는 것은 의미있는 일이 아닐까요?

'퍼온~바둑..! > 관련 자료들~' 카테고리의 다른 글

[=] 바둑은 계산이 아니다(답변2)  (0) 2008.05.29
[=] 바둑은 계산이 아니다!(답변1)  (0) 2008.05.29
[=] p 대 np  (0) 2008.05.29
[=] 바둑관련1  (0) 2008.05.29
[=] 게임이론과 바둑  (0) 2008.05.29