오늘 인공지능을 표방한 바둑프로그램 알파고가 이세돌 9단을 상대로 승리를 거두었다. 나는 이미 알파고의 5대 0 승리를 예상했기 때문에 별로 놀랄 일은 아니라고 생각했다.
나는 바둑 아마 1-2단의 기력인 적도 있었고 15년 정도 컴퓨터 프로그램을 해왔기 때문에 컴퓨터 바둑 프로그램에 대해 예상하는 점이 있었다. 그렇다 해도 내가 인공지능이나 머신러닝 같은 특정 분야의 전문가도 아니고 그리 수준 높은 기력도 아니기 때문에 나 같은 사람의 의견은 말해 봐야 심심파적의 잡설에 불과할 것이다.
이 대결을 앞에 두고 사람들이 가능한 바둑의 경우 수가 우주의 원자 수 보다 많다고 해서 깜짝 놀랐다. 바둑의 경우 수가 많아서가 아니라 우주의 원자 수를 추측한다는 사실에 놀란 것이다. 근거를 가지고 한 말이겠지만 놀랍긴 하다.
바둑의 경우의 수는 누군가 친절히 작성해 놓은위키피디아를 보면 잘 알 수 있다. 19줄 바둑판에서 가능한 경우 수는
208168199381979984699478633344862770286522453884530548425639456820927419612738015378525648451698519643907259916015628128546089888314427129715319317557736620397247064840935인 모양이다.
그만큼 바둑이 심오하기 때문에 인공지능이 쉽게 이길 수 없을 것이란 의견이 많았는데, 내 생각은 다르다. 그 이유는 다음과 같다.
단순히 생각해서 19줄 바둑판의 경우의 수는 361계승(팩토리얼)이다. 계승은 n!으로 표기되는데 n!은 n이 커지면 그 값이 급격히 커진다. 반대로 생각해서 n의 값이 작아지면 경우의 수는 급격히 줄어든다.
현대의 병렬 컴퓨터의 계산 능력으로 Brute-force search 방법을 써서 바둑의 모든 경우 수를 계산 할 수 있는 n의 지점이 있을 것이다. 다시말해 19줄 바둑판 보다 사이즈가 작은 바둑판이라면 모든 가능한 패스를 컴퓨터가 계산할 수 있다는 말이다.
Brute-force search 방법이란 일일이 하나씩 해보는 것을 의미한는 것으로 컴퓨터 과학의 문제 해결 방법 중 하나이다. 아마 내 추측으론 바둑이 중반쯤 진행된 정도 즉 100수에서 200수 정도가 착점되면 알파고는 그 다음 모든 경우의 수에 해당하는 게임의 패스를 일일이 계산해 볼 수 있는 컴퓨팅 파워가 있다고 추측하는 것이다.
그렇다면, 컴퓨터의 입장에서는 바둑이 중반이 될 때까지 가능한 경우의 패스를 줄이기 위해 노력하고 대충 판세의 호각을 이룰 수만 있다면 중반 이후는 모든 경우의 패스를 계산하는 것이 가능해져 자신이 승리할 가능성이 가장 높은 패스를 매번 선택함으로써 쉽게 인간 기사에게 승리를 거둘 수 있을 것이다.
예를 들어, 바둑판의 한 귀퉁이에서 정석을 하나 놓음으로써 바둑의 가능한 패스는 엄청나게 줄어들게 된다. 그 밖에 무슨 방법이 있을까?
나는 오늘 알파고의 바둑을 보고 그것을 알았는데, 그것은 바로 컴퓨터 과학자들이 좋아는 방법 중의 하나인 Divide and conquer algorithms 이다.
오늘 바둑에서 알파고는 바둑판의 3분의 2지점을 가로지르는 줄바둑을 두었는데, 그것은 바둑판의 좌우를 분할하여 각각 폐쇄된 바둑영역으로 만드는 역할을 한다.
폐쇄된 영역들은 서로 간섭할 수 없기 때문에 큰 바둑판을 작은 여러 개의 바둑판으로 쪼개는 역할을 하게 되고, 전체 바둑판의 모든 패스를 계산하는 것이 현재 알파고의 컴퓨팅 파워로 불가능하다 하더라도 분할된 각각의 바둑판들의 모든 패스를 계산 가능하도록 만들 수가 있는 것이다.
더 나아가 줄바둑으로 분할된 영역의 3분지 2를 차지한 영역에서는 흑백이 각자 큰 집을 지었는데, 그렇게 하면 더욱 바둑의 패스가 줄어드는 것이다. 왜냐하면, 굳어진 각각의 집들도 하나의 폐쇄된 영역이기 때문이다.
오늘 바둑에서 알파로는 줄바둑으로 분할된 오른쪽 영역에서 흑집에 침투하는 승부수를 던졌다. 그 영역은 바둑판의 대략 3분지 1을 차지하는데, 그 안에서 가능한 모든 패스를 계산하는 것이 알파고의 능력으로 가능했을 것이다. 모든 가능한 패스가 이미 계산되어 있다면 이세돌 기사가 어떤 수를 쓰더라도 알파고는 자신에게 유리한 패스를 지속적으로 선택할 것이고 결국 오른쪽 영역에서 지역적인 승리를 거둘 수 있다고 봐야한다.
내 사고를 어느 정도 따라온 사람들이 있을지 모르지만, 내가 생각하기에 무슨 거창한 인공지능이 아니더라도 컴퓨터가 인간을 이기는 것은 그렇게 어려운 일이 아니다.
정리하면, 알파고는 엄청나지만 물론 제한된 자신의 컴퓨팅 파워로 모든 패스를 계산하여 자신이 승리하기 위해 다음과 같은 전략을 취할 수 있다고 생각할 수 있다.
바로 바둑판을 분할하여 다른 곳에 상호 영향을 주지 않는 닫혀진 영역, 즉 폐쇄계를 만들고 각 폐쇄계 안의 모든 경우 수를 계산하는 것이다. 폐쇄계를 만드는 방법은 두 가지이다. 줄바둑으로 바둑판의 영역을 분할하는 방법. 커다란 집을 지어 바둑판을 분할하는 방법.
알파고와 판후이 기사의 대국에서 줄바둑이 많이 나오는 것을 의아했었다. 오늘 이세돌과 알파고의 대국을 보고 그 의미를 알 것도 같았다. 물론 이것 말고도 가능한 패스를 줄이기 위한 다른 전략적인 수단이 있을지도 모른다.
그렇다. 컴퓨터도 할 수 있고 인간도 할 수 있는 일이라면, 당연히 컴퓨터가 잘하는 것이다. 바둑이라고 예외는 아닐 것이고, 서운하게 생각할 필요도 없다.
사주팔자를 보는 것도 마찬가지다. 바롬 이름과 미래 처럼 잘 되어있는 사주팔자 프로그램이라면 컴퓨터로 보는 사주가 여느 철학관에서 사람이 직접 간명해주는 사주 보다 더 정확하게 되는 것은 당연한 일이다.
사주 명리를 보는 것도 일견 사람들이 보기에 다소 유치하거나 엉성해 보이는 이론이기는 해도 본질적으로는 상당한 계산이 필요한 계산 집중적인 작업인데 숙련된 역술인이라해도 일생에 걸친 운세를 계산해 내는 것은 상당한 시간이 소요되는 힘든 일이 아닐 수 없다.
이런 유형의 작업이라면 당연히 컴퓨터가 잘할 수 있는 일인 것이다.
예전에 이런 비유를 든 적이 있다. 핸드폰 요금을 계산하는데 어느 통신사에서 우리는 성의를 다하고 계산을 정확히 하기 위해 사람이 하나하나 수작업으로 통신비를 계산합니다 하고 말한다면, 컴퓨터로 통신비를 계산해 주는 곳보다 더 신뢰할 수 있겠는가?
오늘 인공지능을 표방한 바둑프로그램 알파고가 이세돌 9단을 상대로 승리를 거두었다. 나는 이미 알파고의 5대 0 승리를 예상했기 때문에 별로 놀랄 일은 아니라고 생각했다.
나는 바둑 아마 1-2단의 기력인 적도 있었고 15년 정도 컴퓨터 프로그램을 해왔기 때문에 컴퓨터 바둑 프로그램에 대해 예상하는 점이 있었다. 그렇다 해도 내가 인공지능이나 머신러닝 같은 특정 분야의 전문가도 아니고 그리 수준 높은 기력도 아니기 때문에 나 같은 사람의 의견은 말해 봐야 심심파적의 잡설에 불과할 것이다.
이 대결을 앞에 두고 사람들이 가능한 바둑의 경우 수가 우주의 원자 수 보다 많다고 해서 깜짝 놀랐다. 바둑의 경우 수가 많아서가 아니라 우주의 원자 수를 추측한다는 사실에 놀란 것이다. 근거를 가지고 한 말이겠지만 놀랍긴 하다.
바둑의 경우의 수는 누군가 친절히 작성해 놓은위키피디아를 보면 잘 알 수 있다. 19줄 바둑판에서 가능한 경우 수는
208168199381979984699478633344862770286522453884530548425639456820927419612738015378525648451698519643907259916015628128546089888314427129715319317557736620397247064840935인 모양이다.
그만큼 바둑이 심오하기 때문에 인공지능이 쉽게 이길 수 없을 것이란 의견이 많았는데, 내 생각은 다르다. 그 이유는 다음과 같다.
단순히 생각해서 19줄 바둑판의 경우의 수는 361계승(팩토리얼)이다. 계승은 n!으로 표기되는데 n!은 n이 커지면 그 값이 급격히 커진다. 반대로 생각해서 n의 값이 작아지면 경우의 수는 급격히 줄어든다.
현대의 병렬 컴퓨터의 계산 능력으로 Brute-force search 방법을 써서 바둑의 모든 경우 수를 계산 할 수 있는 n의 지점이 있을 것이다. 다시말해 19줄 바둑판 보다 사이즈가 작은 바둑판이라면 모든 가능한 패스를 컴퓨터가 계산할 수 있다는 말이다.
Brute-force search 방법이란 일일이 하나씩 해보는 것을 의미한는 것으로 컴퓨터 과학의 문제 해결 방법 중 하나이다. 아마 내 추측으론 바둑이 중반쯤 진행된 정도 즉 100수에서 200수 정도가 착점되면 알파고는 그 다음 모든 경우의 수에 해당하는 게임의 패스를 일일이 계산해 볼 수 있는 컴퓨팅 파워가 있다고 추측하는 것이다.
그렇다면, 컴퓨터의 입장에서는 바둑이 중반이 될 때까지 가능한 경우의 패스를 줄이기 위해 노력하고 대충 판세의 호각을 이룰 수만 있다면 중반 이후는 모든 경우의 패스를 계산하는 것이 가능해져 자신이 승리할 가능성이 가장 높은 패스를 매번 선택함으로써 쉽게 인간 기사에게 승리를 거둘 수 있을 것이다.
예를 들어, 바둑판의 한 귀퉁이에서 정석을 하나 놓음으로써 바둑의 가능한 패스는 엄청나게 줄어들게 된다. 그 밖에 무슨 방법이 있을까?
나는 오늘 알파고의 바둑을 보고 그것을 알았는데, 그것은 바로 컴퓨터 과학자들이 좋아는 방법 중의 하나인 Divide and conquer algorithms 이다.
오늘 바둑에서 알파고는 바둑판의 3분의 2지점을 가로지르는 줄바둑을 두었는데, 그것은 바둑판의 좌우를 분할하여 각각 폐쇄된 바둑영역으로 만드는 역할을 한다.
폐쇄된 영역들은 서로 간섭할 수 없기 때문에 큰 바둑판을 작은 여러 개의 바둑판으로 쪼개는 역할을 하게 되고, 전체 바둑판의 모든 패스를 계산하는 것이 현재 알파고의 컴퓨팅 파워로 불가능하다 하더라도 분할된 각각의 바둑판들의 모든 패스를 계산 가능하도록 만들 수가 있는 것이다.
더 나아가 줄바둑으로 분할된 영역의 3분지 2를 차지한 영역에서는 흑백이 각자 큰 집을 지었는데, 그렇게 하면 더욱 바둑의 패스가 줄어드는 것이다. 왜냐하면, 굳어진 각각의 집들도 하나의 폐쇄된 영역이기 때문이다.
오늘 바둑에서 알파로는 줄바둑으로 분할된 오른쪽 영역에서 흑집에 침투하는 승부수를 던졌다. 그 영역은 바둑판의 대략 3분지 1을 차지하는데, 그 안에서 가능한 모든 패스를 계산하는 것이 알파고의 능력으로 가능했을 것이다. 모든 가능한 패스가 이미 계산되어 있다면 이세돌 기사가 어떤 수를 쓰더라도 알파고는 자신에게 유리한 패스를 지속적으로 선택할 것이고 결국 오른쪽 영역에서 지역적인 승리를 거둘 수 있다고 봐야한다.
내 사고를 어느 정도 따라온 사람들이 있을지 모르지만, 내가 생각하기에 무슨 거창한 인공지능이 아니더라도 컴퓨터가 인간을 이기는 것은 그렇게 어려운 일이 아니다.
정리하면, 알파고는 엄청나지만 물론 제한된 자신의 컴퓨팅 파워로 모든 패스를 계산하여 자신이 승리하기 위해 다음과 같은 전략을 취할 수 있다고 생각할 수 있다.
바로 바둑판을 분할하여 다른 곳에 상호 영향을 주지 않는 닫혀진 영역, 즉 폐쇄계를 만들고 각 폐쇄계 안의 모든 경우 수를 계산하는 것이다. 폐쇄계를 만드는 방법은 두 가지이다. 줄바둑으로 바둑판의 영역을 분할하는 방법. 커다란 집을 지어 바둑판을 분할하는 방법.
알파고와 판후이 기사의 대국에서 줄바둑이 많이 나오는 것을 의아했었다. 오늘 이세돌과 알파고의 대국을 보고 그 의미를 알 것도 같았다. 물론 이것 말고도 가능한 패스를 줄이기 위한 다른 전략적인 수단이 있을지도 모른다.
그렇다. 컴퓨터도 할 수 있고 인간도 할 수 있는 일이라면, 당연히 컴퓨터가 잘하는 것이다. 바둑이라고 예외는 아닐 것이고, 서운하게 생각할 필요도 없다.
사주팔자를 보는 것도 마찬가지다. 바롬 이름과 미래 처럼 잘 되어있는 사주팔자 프로그램이라면 컴퓨터로 보는 사주가 여느 철학관에서 사람이 직접 간명해주는 사주 보다 더 정확하게 되는 것은 당연한 일이다.
사주 명리를 보는 것도 일견 사람들이 보기에 다소 유치하거나 엉성해 보이는 이론이기는 해도 본질적으로는 상당한 계산이 필요한 계산 집중적인 작업인데 숙련된 역술인이라해도 일생에 걸친 운세를 계산해 내는 것은 상당한 시간이 소요되는 힘든 일이 아닐 수 없다.
이런 유형의 작업이라면 당연히 컴퓨터가 잘할 수 있는 일인 것이다.
예전에 이런 비유를 든 적이 있다. 핸드폰 요금을 계산하는데 어느 통신사에서 우리는 성의를 다하고 계산을 정확히 하기 위해 사람이 하나하나 수작업으로 통신비를 계산합니다 하고 말한다면, 컴퓨터로 통신비를 계산해 주는 곳보다 더 신뢰할 수 있겠는가?
댓글 없음:
댓글 쓰기