협력이 최고의 전략이다   

2009. 12. 21. 22:21
반응형

여러분이 얼굴 모르는 자와 '죄수의 딜레마' 게임을 한다고 상상해 보세요. 죄수의 딜레마란 '게임이론'에 감초처럼 등장하는 대표적인 딜레마죠. 많은 분들이 알겠지만, 요약해서 설명하면 다음과 같습니다.

나와 그가 동시에 협력하면         → 나는 3,  상대방도 3의 이익을 얻음
나는 협력했는데, 그가 배반하면   → 나는 0, 상대방은 5의 이익을 얻음
나는 배반하고, 그가 협력하면     → 나는 5, 상대방은 0의 이익을 얻음
나와 그가 모두 배반하면           → 나는 1, 상대방도 1의 이익을 얻음

이때, 나와 그는 서로 협력할지 배반할지 미리 알 수 없는 상황입니다. 둘이 동시에 협력하면 각각 3의 이익을 얻습니다. 하지만 '내가 협력했는데 그가 배반해 버리면', 졸지에 나는 이익이 하나도 없고 그가 5의 이익을 독차지할 가능성이 아주 높겠지요. 그도 나와 똑같이 생각하겠죠. 그래서 결국 '나와 그가 모두 배반해서' 고작 1의 이익만 얻는, 좋지 않은 상황에 빠집니다.

'나도 그도 배반한다'는 것이 최종적인 선택이 되는데, 이와 같은 균형점을 게임이론에서는 '내쉬 균형'이라고 부릅니다. 이 말은 게임이론을 발전시킨 공로로 노벨 경제학상을 수상한 수학자 존 내쉬의 이름을 땄습니다. 여기까지게임이론에 관심이 있는 분들이라면 익히 아는 내용일 겁니다.


죄수의 딜레마 게임을 한번이 아니라 여러 차례(예를 들어 200회 정도) 시행한다면, 여러분은 매번 협력할지 배반할지를 결정해야 합니다. 의사결정의 목적은 200회의 게임이 끝난 후에 누적된 점수를 최대화하기 위해서죠. 문제는 언제 협력하고 언제 배반할지를 결정하는 로직이 무엇이냐는 겁니다.

1980년에 정치학자인 로버트 엑설로드는 반복적인 죄수의 딜레마 게임에서 최대 이익을 얻기 위한 로직을 서로 겨루어 보자고 '대회'를 제안했습니다. 모두 15개의 프로그램들이 나름의 로직을 제시했는데, 최종적으로 1등을 차지한 로직은 겨우 4줄 밖에 안 되는 프로그램이었습니다.

그것은 '팃포탯(Tit-for-Tat)'이라고 불리는 로직이었습니다. 그대로 되갚아 준다는 뜻을 가진 팃포탯 전략은 캐나다의 심리학자인 아나톨 라포포트가 제안했는데, 로직을 풀어보면 다음과 같습니다.

1. 맨처음 게임에서는 무조건 협력한다.
2. 그 다음 게임부터, 이전 게임에서 상대방이 협력했으면 협력하고, 배반했으면 배반한다.

아주 간단하죠? 게임에 참가한 프로그램 중에는 77줄이나 되는 로직이 있었는데, 그에 비하면 너무나 단순한 논리입니다. 이런 로직이 경쟁에서 이겼다는 것이 놀라울 정도입니다.

로버트 액설로드는 1차 대회의 결과를 널리 알리고 보다 많은 사람들을 참가시켜 2차 대회를 열었습니다. 2차 대회 때는 모두 63개의 프로그램이 출품됐는데, 놀랍게도 팃포탯 로직이 또다시 1등을 차지했습니다. 두 번에 걸친 대회를 통해 액설로드가 내린 결론은 '최대 이익을 창출하는 가장 효과적인 행동은 상대방을 속이는 것이 아니라 서로 협력하는 것이다' 입니다. 그리고 '상대방이 협력하지 않으면 즉각적으로 보복에 나서는 의지를 있어야 협력 체계를 유지할 수 있다' 입니다.

지금까지 언급한 내용은 액설로드가 쓴 '협력의 진화'라는 책에 자세히 소개됐습니다. 그의 주장이 옳은지 그른지 비판적으로 따져볼 겸 꼭 한번 읽어보기를 '권합니다. ^^



'진짜로 팃포탯 전략이 우수한 전략일까?' 저는 이런 의문을 가지고 직접 실험을 해보기로 했습니다. 그래서 엑셀 파일에 몇 개의 전략을 서로 대결시켜 봤지요. 대진 방식이 '풀 리그'라서 1개 로직을 추가시킬 때마다 대진표가 기하급수적으로 커지더군요. 그래서 5개 로직만 참가시켰습니다.

아래의 표는 그 결과입니다. 각 로직이 무엇을 말하는지는 아래의 엑셀 파일을 다운로드하면 간략하게 설명이 나와 있습니다. 



'랜덤'이라는 전략에 쓰인 함수가 randbetween() 이라서 셀을 건드릴 때마다 표의 숫자와 랭킹이 바뀌기는 하지만, 팃포탯 전략은 대개 3위 정도를 랭크합니다. 로버트 액설로드가 행한 대회에서는 팃포탯 전략이 부동의 1위였는데, 제가 시행한 대회는 참가선수들이 적기 때문에 팃포탯이 3위 정도 밖에 못한 듯 합니다. 

하지만, 저의 '작은 대회'에서도 주목할 만한 시사점이 있습니다.

첫 번째, 협력과 배반을 맘대로 선택하는 랜덤 전략이 거의 꼴찌라는 겁니다. '아무 생각 없이' 의사결정하면 거지꼴을 못 면한다'는 뜻이 아닐까 생각합니다. ^^

두 번째, 상대방을 이용해 먹으려는 전략인 '요스 전략'의 성적이 좋지 않다는 겁니다. 상대방을 배반해서 5의 이익을 독차지하려는 심보로는 최대이익을 얻을 수 없다는 교훈을 줍니다.

세 번째는 가장 중요한 시사점인데요, 기본적으로 협력적이면서 상대방의 배반에는 철저하게 응징하는 '프리드먼' 전략과 '팃포투탯' 전략이 상위에 랭크됐다는 사실입니다. 팃포탯 전략도 3위이지만 1, 2위와의 격차가 그리 크진 않습니다.
(팃포투탯은 상대방이 두번 배반해야, 배반으로 응징하는 전략을 말함)

제가 시행한 대회는 고작 5개 팀이 참가한 거라서 팃포탯 전략의 우수성을 보이는 데엔 역부족이었지만, 좀더 많은 로직을 참여시키면 액설로드가 행했던 결과와 비슷하게 나오리라 생각됩니다. 여러분들 중에 관심이 있는 분들은 독특한 논리를 개발해서 적어도 16개 팀이 참여한 '풀 리그'를 벌여보기 바랍니다. 팃포탯이 1, 2위를 차지하지 않을까요? 혹시 팃포탯 전략보다 우수한 전략이 발견되면 저에게 알려주면 고맙겠습니다.

"성공은 상대방을 배반하고 눌러 이기는 데 있지 않고, 상대방으로부터 협력을 이끌어내는 데 있다" 평범하면서도 동시에 비범한 교훈을 팃포탯이 전합니다. 그래서 개인이나 집단이 악하거나 선하거나 협력은 자연선택된다는 것이 로버트 액설로드의 주장입니다. 기업이 경영활동을 하거나, 개인이 사회활동을 할 때 유념해야 할 교훈이겠지요. 여러분은 이에 동의합니까?


반응형

  
,

[공지] 연락처 변경   

2009. 12. 21. 10:32
반응형

안녕하십니까? 
인퓨처컨설팅의 연락처가 다음과 같이 변경됐으니, 양지해 주시면 고맙겠습니다.


Address : 서울시 강남구 삼성동 트레이드 타워 3304호
Office : 02-6007-2340
Fax : 02-6008-7799
Mobile : 010-8998-8868
Email : jsyu@infuture.co.kr   또는  jsyu@infuture.kr
Homepage : www.infuture.kr


연말 마무리 잘 하시고, 즐거운 성탄절 되시기 바랍니다. ^^


반응형

  
,

엑셀로 프랙탈 그리기   

2009. 12. 19. 10:45
반응형

프랙탈(Fractal)이란, 자기유사성(self-similarity)를 가지면서 끊임없이 반복되는 패턴을 의미합니다. 혼돈 이론(카오스 이론)과 밀접하게 관련이 있지요.

프랙탈 이미지를 보면 그걸 어떻게 그릴까, 어렵게 느껴지는데 여러분이 표 계산을 사용할 때 쓰는 엑셀(excel)로도 프랙탈을 그릴 수 있습니다. 비주얼 베이직(Visual Basic)을 좀 알아야 한다는 어려움이 있긴 하지만, 몰라도 쉽게 따라할 수 있습니다.

이렇게 해 보세요.

1. 엑셀을 엽니다.
2. sheet 전체를 선택한 다음, 행 높이를 4.5, 열 너비를 0.4 정도로 작게 설정합니다.
3. '도구 > 매크로 > Visual Basic Editor'를 클릭합니다. 새로운 창이 하나 뜹니다.
4. 새롭게 뜬 창에서, '보기 > 코드' 를 클릭하면 빈 편집 공간이 나타납니다.
5. 거기에 다음의 코드를 넣습니다.

Sub bin_sip()
Cells.Interior.ColorIndex = xlNone
Const xcell = 150
Const ycell = 150
Dim x, y
  For x = 1 To xcell
    For y = 1 To ycell
       If (x + y And Abs(x - y)) = 0 Then
           ActiveSheet.Cells(x, y).Interior.ColorIndex = 1
       End If
    Next
   Next
End Sub

6. '실행 > 매크로 실행' 을 클릭합니다.
7. excel sheet로 가보면 아래와 같은 그림이 나타납니다. (이 그림은 '시어핀스키' 삼각형과 유사합니다.)


8. 다른 프랙탈 이미지를 얻으려면, 위의 코드에서 빨갛게 표시된 부분을 바꿔 주면 됩니다.
    그 부분을 다음의 것들로 바꾸면 다양한 프랙탈을 볼 수 있습니다.

(x + y And Abs(Int(Sqr(x)) - Sqr(y))) = 0


(x * x * x + y * y * y And 8) = 8


그 밖에 다음과 같은 식을 넣어보세요. 이 식 이외에 여러분이 마음대로 바꿔 봐도 됩니다. 단, x, y, And, = 의 패턴을 유지해야 합니다.

(x * y And y / x) = 0
(x * y + y * x And 12) = 12
(x * x * y + x * y * y And 20) = 20
(x * x / y + y * y / x And 32) = 32
(x * x + y * y And 100) = 100

프랙탈 이미지는 보면 볼수록 신비롭고 경이롭습니다. 주말에 엑셀로 프랙탈 이미지를 만들어 보면 재미있을 겁니다. ^^


반응형

  
,

혼돈과 나비효과가 지배하는 세상   

2009. 12. 18. 13:26
반응형

어떤 동물(토끼나 쥐)들이 한정된 공간에서 서식할 때, 다음 세대의 군집 크기를 어떻게 예측할 수 있을까요? 우리는 보통 다음과 같은 방정식을 써서 다음 세대의 군집 크기를 예상합니다. 여기서 출생률은 1마리의 토끼가 낳은 새끼의 수라고 간주하면 됩니다. 

다음세대의 군집 크기 = 출생률 * 지금세대의 군집 크기

하지만, 위의 '선형(線形) 방정식'은 한정된 공간이 가지는 제약조건인 '자원의 한계'를 반영하지 못합니다. 먹이와 거주 공간의 부족 때문에 다음세대의 군집이 일정하게 늘어나지 않습니다. 군집의 크기가 일정 수준을 넘어서면 먹이와 거주지 경쟁으로 서로 공격하거나 스트레스를 받아서 군집의 크기가 줄어들거나 정체되기 때문입니다.

한정된 공간과 자원을 두고 경쟁하는 동물(혹은 사람)의 군집 크기 변화를 보다 잘 반영하려면, 아래와 같은 '비선형(非線形) 방정식'을 고려해야 합니다.

다음세대 군집 크기 = 출생률 * 지금세대 군집 크기 * (1 - 지금세대 군집 크기)

이 방정식은 현재 군집이 점유한 부분과, 군집이 채우지 않은 부분이 서로 상호작용하여 다음세대의 군집 크기를 결정한다는 의미를 담았습니다. '(1 - 지금세대 군집 크기)'라는 항이 군집이 채우지 않은 부분을 가리킵니다. 예를 들어, 최대 정원이 100명인 버스가 있을 때, 현재 60명이 탑승 중이라면 다음 정류장에서 태울 수 있는 사람의 수는 현 탑승자인 60명과 40명분의 빈 자리의 관계로 결정된다는 뜻입니다.

'채워진 부분'과 '채워지지 않은 부분' 사이의 상호작용은 때론 크게, 때론 작게 나타납니다. 그 결과가 바로 출생률이죠. 세대를 거치면서 출생률은 고정되지 않고 매번 '진동'합니다.

다음세대의 군집 크기가 비선형 방정식을 따르고, 출생률이 진동한다고 가정하면, 흥미로운 그래프를 얻을 수 있습니다. 아래의 그래프가 바로 그것입니다. (대학 다닐 때 이 그래프를 PC로 그리느라 C 언어로 무진 고생했는데, 이제 Excel로 쉽게 그릴 수 있으니 편리한 세상입니다.)


출생률이 2.3에서 약 3.0이 될 때까지는 군집의 크기가 66% 정도로 수렴됩니다. 그러나 3.0을 넘어서면, 군집의 크기는 두 개의 가능성을 가집니다. 예를 들어, 출생률이 3.3일 때, 군집의 크기는 약 45%이거나 80%가 됩니다.

헌데, 출생률이 3.45를 넘어서면 군집의 크기는 4개의 가능성을 갖고, 3.55를 넘으면 8개의 가능성이 드러납니다. 그 이상을 넘어가면, 군집의 크기는 그래프에서 보다시피 무수히 많은 가능성을 가지게 되죠. 그야말로 '혼돈(카오스)'에 빠지는 모습입니다. 출생률이 3.55 이상인 구간에서는 출생률이 아주 미묘하게 변화한다 해도 그 결과가 크게 달라지기 때문에 다음세대의 군집 크기를 예측하기가 불가능합니다.

이 그래프에서 한 가지 재미있는 것은 '자기유사성(Self-similarity)'을 갖는다는 사실입니다. 그래프의 검은 부분(출생률이 3.55 이상인 부분)을 확대하면 수많은 '갈래'들이 나타나는데, 그 모양이 3.0에서 3.55사이의 구간에서 보는 갈래 모양과 같다는 것이죠. 모양을 끊임없이 반복하는 겁니다. 이런 그림을 프랙탈(Fractal)이라고 하죠.

군집 크기에서 나타나는 혼돈(카오스) 현상은 '나비효과'의 개념과 이어집니다. 아마존에서 나비가 펄럭거리면 그것이 멕시코만에 허리케인을 일으킨다는 개념이죠. 기상학자인 로렌쯔가 처음 제시한 현상이죠. 나비효과는 Excel을 써서 여러분도 쉽게 재현할 수 있습니다. 

원래 0.808080 의 질량을 갖는 물체가 있는데, 측정 오차에 의해서 0.808081 로 측정했다고 가정해 보겠습니다. 고작 0.000001 의 오차라서 이 정도는 무시할 수 있겠다 싶지만, 그 측정치가 다시 '시스템' 속에 피드백(되먹임)되면 오차는 폭증합니다.

아래의 그래프는 0.808080 을 두배씩 증가시킨 값에서, 0.808081을 두배씩 증가시킨 값을 뺀 '오차'를 나타냅니다. 30회만 진행했는데도, 오차가 기하급수적으로 증가하는 모습을 나타냅니다. 아마존의 나비가 허리케인을 일으킬 만합니다.


위에서 언급한 '군집크기에서 나타나는 혼돈 현상'과 '오차의 폭증'은 지난 번에 포스팅한 '개인의 미시적 동기가 큰 변화를 일으킨다'와 연결됩니다. 위의 그래프는 미묘한 변화가 걷잡을 수 없는 커다란 결과로 나타남을 수학적인 이미지로 그려낸 것이기 때문입니다.

우리는 지구라는 '닫힌 계' 속에 비선형 방정식의 지배를 받으며 삽니다. 우주여행이 일상화되지 않은 한, 우리가 누릴 수 있는 자원은 한계가 있습니다. 통신수단의 발달로 상호작용이 활발해졌습니다. 그로 인해 작은 오차가 우리의 네트워크 속에 피드백되면 큰 파국(catastrophe)을 발생시킬 가능성이 존재합니다. 우리에게 놓인 불확실성이란 바로 이런 겁니다. 그리고 그 파국의 조짐은 등 뒤에서 우리를 늘 응시하고 있습니다.

위의 그래프는 아래의 Excel 파일에 있습니다. 여러 가지 조건으로 시뮬레이션 해보면 재미있을 겁니다. ^^


반응형

  
,

손가락이 짧은 여성이 민감하다   

2009. 12. 17. 22:51
반응형

2009년 12월 17일 ~ 12월 18일에 RSS 피드에서 발견한 재미있고 흥미로운 글들을 모아 올립니다. 영문이란 점을 양해해 주세요~ ^^


게임을 할 때 재미있고 흥미로우면 시간이 빨리 흐르는 것 같지만, 시간이 빨리 흘렀다고 속이면 왠지 그 게임을 더 재미있게 느낀다는. http://bit.ly/88tijA



첫째(장남 또는 장녀)아이는 차남/차녀보다 '돈'과 관련한 게임을 할 때 '더 이기적인 모습'을 보여 준다는... http://bit.ly/8wg9ln



LCD 앞에서 손을 움직여서 화면의 물체를 움직이는 기술이 개발됐네요. 이제 마우스가 필요 없게 될지도.... http://bit.ly/7CD2rB



지구온난화가 자연스러운 현상이다, 인위적인 현상이다 공방이 치열하죠. 지구온난화가 자연 현상이 아니라는 50가지 이유. http://bit.ly/6BuzBC



손가락이 짧은 여성일수록 터치에 민감하다는. (손가락이 긴 여성이면 '목석'이라는 뜻일까?)... http://bit.ly/4Hgi18



여성 트위터 여러분, 다음의 2개 그림 중 어떤 사무실에서 컴퓨터 작업(프로그래밍 등)을 하고 싶으세요? 여성 IT 엔지니어들을 위한 배려가 필요하다는... http://bit.ly/6KOC5B



자신을 돌아보고 추스리기 위해 스스로 던져보는 8가지 질문들 http://bit.ly/4toIKD



사람들은 아무리 좋은 의미의 세금이라도 '세금'이라는 단어 자체를 싫어한다는... 정책 입안자들은 이 점을 잘 알아야... http://bit.ly/844f1n



어떤 사람의 행동이 그사람의 성격과 인격을 나타낸다고 생각하지만, 상황의 힘이 그사람의 행동을 크게 좌우한다는.. http://bit.ly/8lEEoE


  
CEO와 임원들에게 천문학적 성과급이 주어지는 이유는? http://bit.ly/7xSt98
반응형

  
,