알파고 작동원리에 근거하여 져주기논란 종결글 쓰고자 합니다.
우선 글에 들어가기에 앞서 알파고의 작동원리에 대해 간략히 요약하자면,
알파고는 많은 분이 아시다시피 정책망 - 가치망에 따라 착수를 하는 것으로 알려져있는데,
1. 정책망에 의해 둘 수 있는 곳을 많이 살펴보고,
2. 가치망에 의해 가장 유리한 점에 착수한다 이정도 입니다.
정책망에서 '모든'이라고 하지 않고 '많은'이라는 단어를 사용한 이유는,
모든 경우의 수를 살펴보는 것은 불가능하기 때문에 모델링을 통해 경우의수를 줄이고 착수 가능한 곳만 살펴본다는 의미에서 '많은'이라는 단어를 사용했습니다.
가치망 항목에서 유리한 점에 착수한다는 것도, 이런 식으로 대국을 진행한 결과 예를 들어 수읽기를 통해 A, B점에 착수했다고 가정하고 각각 10000개의 대국을 진행했는데(실제로는 그것보다 훨씬훨씬 더 많겠지만) 그중에 A지점에 착수했을 경우 7000판은 이기고 3000판은 지는 결과가 나왔다면 승률 70%, B지점에 착수할 경우 8000판 이기고 2000판 지면 승률 80% 이런식으로 계산하여 승률이 높은 곳에 착수하게 됩니다.
여기서 많은 분들이 오해하고있는 부분이 있는데, 알파고는 집계산을 하여 유리한 곳에 착수한다라고 많은 분들이 생각하시지만, 딱 잘라서 말하자면 문승환박사님의 발표에 의하면 알파고는 집계산 하지 않습니다.
여기서 중요한 명제들 뽑아낼 수 있는데,
1. 바둑의 경우의 수는 매우 많기 때문에, 불리한 상황에 몰렸더라도 어떻게든 타개하는 방법이 가능하다는 것입니다.
쉽게 풀어서 말하자면, 알파고가 자체계산하여 10000번중 7000번 이겨서 승률 70%로 계산하여 유리한 점에 착수했다고 하더라도, 여전히 3000번 지는 전개는 존재하기 때문에 이세돌이 그러한 수순을 따라간다면 타개하는 것이 가능합니다.
2. 알파고는 이세돌의 노림수를 전혀 알 수 없다는 것입니다.
알파고는 그저 착수 가능한 지점들에 경우의 수들을 모두 대입해보고 결과에 따라서 승률이 높은 지점에 둔다 뿐이지, 신의한수라고 불리는 78수 이후에 이세돌의 수순인 80수, 82수, 84수정도는 이세돌과 바둑기사는 어느정도 예상하겠지만 알파고는 전혀 예상하지 못합니다.
조금 길게 설명하자면, 사람이라면 이세돌이 80수에 C지점에 착수하고 바둑을 풀어나가겠다고 직관에 의해 예상하지만,
알파고는 그저 바둑판의 둘 수 있는 남아있는 지점중에 C,D,E,F 등에 뒀다고 가정하고 그 다음수도 랜덤하게 C', D', E', F' 이런식으로 진행하여 끝까지 진행했을 경우 자신이 이기는 패턴이 많이 나오는 곳에 79수를 착수합니다. (사람이 매긴 가치는 C에 둔 돌이 월등하게 높고 나머지는 떨어지기에 C에 둘 확률이 높다고 판단하겠지만, 알파고는 돌의 가치를 C,D,E,F 모두 동일하게 보고 계산하는것 같습니다)
짧게 결론 내리자면,
1. 알파고는 (자신이 계산하여) 항상 자신의 승률이 높은 곳에 착수한다(여전히 지는 패턴은 존재한다)
2. 이세돌은 그저 알파고의 승률이 더 높은 가운데서 이세돌 자신이 이기는 수순을 따라갔을 뿐이다
이정도 입니다.
마지막으로, 생각이 여기까지 미치니 사람이 더 대단하다고 느껴지네요. 사람들은 그저 자신의 직관에 따라 이곳에 두는게 유리할것같다라고 판단하고, 그것들이 모여서 정석이 되었을 뿐입니다. 일반적으로 이 지점이 유리하고 이 지점이 불리하니 다음에는 이런 식으로 둘 것이다.
그런데 그것이 기계로 시물레이션 해서 돌려본 결과와 비슷한 점이 많다니 여기서 더 놀라게 되네요. 알파고처럼 끝까지 계산해본 것도 아니고, 그 이후의 변화도를 예상하며 형세판단만 했을 뿐인데 ㅎㅎ
그리고 바둑처럼 선후수가 분명히 존재하는 게임에는 무적수가 존재하기에 CPU가 훨씬 더 좋아진다면, 하드웨어가 더 좋아진다면 컴퓨터라면 언젠가 무적수를 찾아낼 수 있겠지만, 알파고의 알고리즘대로라면 무적수를 찾더라도 무적수에 따라 두지 않을 확률도 존재합니다.
예를 들어 무적수의 수순이 A B C D 순서대로 착수하는 것인데, 가상대국을 무수히 돌려봐서 B에 두는 것보다 E에 두는 것이 더 이기는 경우의 수가 많다고 판단되면 무적수가 존재하더라도 E에 두겠죠.