본문 바로가기

생명의 철학

카우프만의 NK 모델과 복잡적응계 / Torsten Reil

 

 

카우프만의 NK모델과 복잡 적응계

 

출전 "An Introduction to Complex Systems" by Torsten Reil

 

『혼돈의 가장자리』by Stuart Kauffman

 

최근 경제학, 생명과학, 사회학, 물리학, 화학 등 여러 분야에서 복잡계에 대한 관심이 증가하고 있다. 이 학제간 접근은 이 개념이 다양한 분야들에 널리 적용될 수 있다는 것을 보여주었다. 생물학적 계에서 일어나는 행동은 경제학적 계에서 그 유사사례를 발견할 수 있었고 물리적 계의 연구로부터 얻은 착상들은 민주주의와 같은 사회적 계를 이해하는데 통찰을 제공할 수 있다는 것이 알려지게 되었다.

이 글의 목적은 복잡계의 연구의 근저에 있는 기본개념과 원리들을 소개하는 것이다. 그 매체로서 정적인 텍스트가 아니고 상호작용할 수 있는 html과 자바를 선택했다.

여기서 산타페 연구소의 스튜어트 카우프만에 의해서 그 분석기법이 개발된 랜덤 불리언 네트워크를 중점적으로 다룰 것이다. 내가 이런 방식을 선택한데는 대체로 다음 3가지 이유로 해서이다. 첫째, 중요한 연구들이 이러한 네트워크상에서 수행되어 왔다는 것, 둘째, 이 네트워크는 생물학, 사회학, 경제학 등에 넓은 적용가능성을 가진다는 것, 셋째, 이 논의들은 컴퓨터 시뮬레이션이 가능하다는 것 등으로 해서이다. 이 글에서 이것을 다루기 위한 몇 개의 애플릿을 적재해 놓았다.

 

복잡계란 무엇인가?

 

복잡계란 "카오스의 가장자리에 위치한" 동력학적 계이다.(Lewin,1992) 즉 이것은 완전히 규칙적인 상태와 무작위적인 상태간의 그 중간 영역에 자리잡고 있다. 복잡계는 양 극단의 계에서 보이지 않는 어떤 속성들을 보여주고 있다는 것이 밝혀졌다.(Kauffman, 1995) 자기조직화(self-organization), 적응, 강인성(robustness), 임계성(criticality) 등이 그것이다. 우리는 이제 이것들을 다루어 볼 것이다.

 

우리가 랜덤 불리언 네트워크라는 복잡계의 실제 작동에 들어가기 전에 앞으로 계속 나오게 될 "위상전이"(phase transition)라는 개념을 우선 다루어 두는 것이 도움이 될 것이다. 그 단어가 함축하듯이 위상전이는 두 영역 사이에 있는 계의 상태를 기술한다. 한 예로 다음 실험을 보자.

 

 애플릿으로 연결합니다. 여기를 클릭하세요.

 

400개의 단추가 화면에 보이고 있다. 애플릿 하단의 Run 버턴을 누르면 2개의 단추가 무작위적으로 선택되어 실로 연결된다. 이 과정은 계속 반복되고 연결된 단추들의 수는 계속 증가한다. 애플릿의 상단 좌측에 단추에 대한 실의 비율을 볼 수 있다.

"Pick" 버턴을 누르면 단추들 가운데 아무거나 하나가 선택되어 들어 올려진다. 푸른색의 실과 녹색의 단추는 그것과 함께 들어 올려진 뭉치들을 나타낸다. 단추에 대한 실의 비율을 여러 가지로 다르게 하면서 단추를 "Pick" 해보면 아주 흥미있는 현상들이 관찰된다.

그 비율이 0.5가 될 때 까지는 들어 올려진 뭉치의 최대 크기는 서서히 증가한다. 그러나 0.5에 이르면 뭉치의 크기가 폭발적으로 증대한다. 다음 그래프는 이 위상전이를 보여주고 있다.

 

이러한 위상전이는 여러 곳에서 발견되고 있다. 예컨대 카우프만이 보여주었듯이 분자들의 다양성이 임계값에 달하면 자기촉매적 거동이 저절로 일어난다. 이 위상전이에서 그 계는 돌발적으로 자기 지속적 순환고리(a self sustaining cycle)로 변신한다. 이 위상전이의 개념은 중요한 것인데 애플릿의 이 장난감 모형이 여기에 대한 어떤 직관을 줄 것이다.

우리는 랜덤 불리안 네트워크에 대한 다음 논의에서 이 현상을 다시 관찰할 것이다.

 

랜덤 불리안 네트워크

 

랜덤 불리안 네트워크의 중심적 개념은 많은 수의 전구들을 서로 연결시키는 것이다. 이 전구들은 꺼져 있거나(off), 또는 켜져 있다.(on) (불리안 함수에서는 참 또는 거짓으로 표현된다.) 다음 단계에서의 전구의 상태는 그것과 연결되어 있는 전구들의 현재의 상태에 의해 결정된다. 어떤 상태가 될 것인가는 불리안 함수에 의해 결정된다. 예컨대 전구 B가 단 하나의 다른 전구A와 연결되어 있다면 그 불리안 함수는 a)와 같다.

마찬가지로 A, B와 연결되어 있는 전구 C의 상태는 b)에 규정된 함수에 의해서 결정된다. (한 전구가 K개의 다른 전구와 연결되어 있을 때 이 다른 전구들이 가질 수 있는 상태의 수는 2^K 개다. 해당 전구 자체도 여기에 대해 on또는 off가 될 수 있기 때문에 어떤 전구에 대해 가능한 불리안 함수의 수는 2^(K+1)이다.)

 

이미 예상했겠지만 랜덤 불리안 네트워크는 2개의 변수에 의존한다. 전구의 총수 N과 각 전구에 연결되는 다른 전구들의 수 K가 그것이다. 각 전구들에 대해 불리안 함수들을 하나하나 지정하는 것은 여간 귀찮은 일이 아니다. 그러나 알고리듬에 의해 무작위적으로 생성시킬 수가 있다.

지금 우리가 보고 있는 것은 단 2개의 변수에만 의존하는 복잡계의 아주 단순한 모델이다. 그러나 그럼에도 놀랄만한 복잡한 거동을 보여준다. 이 거동들에 대한 분석에 앞서 우리는 랜덤 불리언 네트워크의 실시간 시뮬레이션을 관찰할 것이다.  

아래에 그것을 시뮬레이션 할 수 있는 애플릿이 있다. 우선 N=500(즉 500개의 전구), K=1(즉 각 전구는 다른 하나의 전구와만 연결되어 있다)로 된 NK 네트워크로 시작해 보자. 그리고 불리안 함수는 앞서 언급한 것처럼 랜덤하게 생성된다.

 애플릿으로 연결합니다. 여기를 클릭하세요.

 

Run 버턴을 눌러보자. 거의 어떤 변화도 볼 수 없을 것이다. 사실 전구는 시간에 따라 그들의 상태를 변화시키고 있지 않다. Stop을 눌러 Run을 중단시키고 하단 제일 우측의 박스안의 값1을 5로 바꾸고 Apply, Run을 눌러보자. 이제야 전구들이 반짝거릴 것이다. 그러나 그 반짝거림은 전적으로 무작위적이다. (조금후에 그 이유를 알아볼 것이다.) 다시 K를 3으로 바꾸어 보자. 이제 당신은 흥미있는 어떤 것을 볼 수 있을 것이다. 잠시후에 여기저기서 전구들이 반짝이기 시작할 것이다. 그런데 K=5의 경우 전구들이 무작위적으로 반짝이었는데 이 경우에는 특정 전구만이 반짝인다.(반짝이지 않는 것은 디스플레이의 편의상 소멸되도록 프로그램했다.) Reset하면서 반복 시도해 보라. 비록 반짝이는 전구의 수는 달라지더라도 이 현상은 그대로임을 확인할 수 있을 것이다.

도대체 무슨 일이 일어나고 있는가? 당신은 질서와 카오스간의 위상전이에 있는 계를 지금 보고 있는 것이다. K=1(당연히 K=0의 경우도)에서 계는 아주 높은 질서상태에 있다. 그것은 얼어붙어 있고 여기서는 아무것도 일어날 수 없다. 반면 K=5의 경우 계는 혼돈적 거동을 보인다. 모든 전구가 반짝이고 다음 상태에서 어느 것이 반짝일지는 전적으로 무작위적이다. 그러나 K=3에서는 이 계는 그 중간적 거동을 보인다. 그것은 전적으로 얼어붙은 것도 아니고 혼돈적인 것도 아니다. 첫째 모든 전구들이 연관되어 있지 않고 그 반짝임도 무작위적이 아니고 주기적이다. 반짝이는 전구 하나를 특정해서 그 움직임을 추적해 보면 그 반짝임에 리듬이 있음을 볼 수 있을 것이다.

여기에 대해 별로 놀라지 않을지 모르겠다. 그러나 이 네트워크에 가능한 상태의 수를 계산해보면 생각이 달라질 것이다. 각 전구는 on, off 의 2개의 상태를 갖고 그런 전구들이 500개가 있다. 그러면 2^500의 가능한 상태가 있는 셈이다. 이것은 10뒤에 150개의 0을 붙인 수이다. 컴퓨터가 초당 천억개의 조합을 시도해본다 해도 10^131년 이상이 걸리며 이것은 우주의  나이의 10^121배이다. 그러나 그 계는 작은 수의 전구와 짧은 순환단계로 정착된다. 그것은 자기조직적이다.

 

이제 앞서 K=3, N=500( 컴퓨터 성능만 좋다면 N값을 올릴 수 있다.)에서 초기조건들을 바꾸어 다시 시도해 보자. 그러기 위해서는 Reset→Run을 누르면 된다. 할 때 마다 초기배열들은 완전히 달라지지만 모두 똑같이 상태순환( 또는 끌개)에 정착한다는 것을 확인할 수 있을 것이다. 이것이 복잡계의 전형적인 특징이다. 이것은 초기조건의 차이에 크게 영향을 받지 않는다. 말하자면 초기조건에 대해 "강인하다"(robust). 이것이 초기조건에 아주 민감한 카오스계와 구분되는 또 다른 특징이다.

 

랜덤 불리안 네트워크의 분석

 

랜덤 불리안 네트워크의 본성에 대한 연구가 거의 30년 동안 계속되어 왔지만 Gerald Weisbuch에 따르면 "소산없는 30년"이었다. 사실 얼마나 많은 끌개들이 만들어지며 한계순환의 평균 길이가 얼마인지에 대한 분석적 해답은 단지 두 종류의 네트워크 K=1과 K=N(서로 완전히 연결된 네트워크)에 대해서만 얻어졌을 뿐이다. K=1의 거동은 너무 뻔해서(trivial) 실제로 흥미로운 아무것도 없다.

 완전히 연결된 네트워크의 경우 평균주기 T 는 다음식으로 표현된다.(Weisbuch, 1991)

 

,

여기서 N은 전구의 수, α=0.63

 

이것은 상태순환의 평균길이는 전구의 수와 함께 지수적으로 증가한다는 것을 의미한다. 예를 들어 N=500의 경우 상태순환의 평균길이는 10^75이다. 이것은 주기로 보기에는 너무 길고 그래서 이 계가 혼돈적으로 보이는 것이다.

반면 끌개의 수M은 N의 증가에 따라 선형적으로 증가한다.

 

M = N/e

여기서 e는 자연대수 2.7182818...

 

예컨대 N=500, K=500의 경우 약 185개의 끌개가 있다.

그러나 불행히도 이 분석결과는 비복잡계에만 적용되는 것이기 때문에 복잡계를 분석할 때는 별로 도움이 되지 않는다. 그래서 랜덤 불리안 네트워크에 대한 연구는 대부분 시뮬레이션을 구동시키고 그 결과를 통계적으로 분석하는데 기초하고 있다.

이러한 연구에서 제기되는 물음들중의 하나는 이것이다. 어떤 지점에서 계가 복잡계의 영역에서 혼돈영역으로 바뀌는가? NK모델에서 혼돈에로의 이행은 K가 3과 4사이에 있을 때 일어난다. 그러므로 위상전이점을 정확히 지적하는 것은 불가능하다. Derrida와 Stauff(1985)는 p라는 연속변수를 도입함으로써 이 문제를 해결했다. 여기서 p는 어떤 불리안 함수에서 어떤 전구가 그와 연결된 다른 전구들에 의해서 1이될 확률이다. 아래 3개의 불리안 함수에서 p값은 각각 0.5, 0.0626, 0.9375이다.

p를 0.5에 놓음으로써 그 계는 변수가 전혀 부가되지 않은 것처럼 거동한다.(왜냐하면 0 또는 1에 대해서 0.5의 확률은 디폴트값에 해당함으로) 여기서 p를 변화시킴으로써 그 계가 혼돈상태에서 벗어나 질서영역으로 가도록 조율할 수 있다.

큰수를 가지고 시뮬레이션을 해 보면  위상전이가 발생하는 임계값 p를 찾을 수 있다. 예를 들어 K=4일 경우 임계값 p 는 0.72이다.

랜덤 불리안 네트워크를 복잡계로 향하도록 정확히 조율하는 능력은 실제 생명에 대해 이 복잡계가 갖는 함축을 연구하는데 필요한 전제조건의 하나이다. 이제 관심을 그곳으로 돌려보자.

 

복잡계 연구의 함축

 

생명에 대한 많은 통찰과 영감이 랜덤 불리안 네트워크에 대한 연구로부터 나왔다. 예를들어 카우프만은 이것과 유전자 네트워크간의 유사성을 찾아냈다.(그림4) K=2(복잡계 영역)를 갖고 시뮬레이션한 결과 발견된 경험적 결과는 끌개의 수는 N의 제곱근과 거의 같다는 것이다. 그래서 N=100,000개일 경우 대략 317개의 끌개가 존재한다. 인간 유전자의 수가 약 100,000개인데 세포유형은 256개이어서 317개에 근접해 있다. 카우프만은 세포유형이란 유전자 네트워크의 끌개라고 주장했다.(게놈 프로젝트의 완성결과 인간 유전자는 35000개에서 40000개로 알려졌는데 카우프만식으로 추산하면 187 ∼200개가 된다. 데이터가 카우프만의 가설을 지지하는 것 같지는 않다. 그러나 유전자의 수를 구하기에 앞서 한 유전자가 여러 곳에 발현하기도 하고 또 여러 유전자가 한 현상에 발현하기도 해서 어떤 것을 단위유전자로 보느냐에 대해 학자들 사이에 의견이 구구하다.) 그는 나아가 다른 종의 경우에서도 그와 같은 현상을 찾아내었다.(유사한 것이 세포주기와 상태순환의 길이 간에도 발견되었다.)

그러나 랜덤 불리안 네트워크로부터 도출된 이 함축이 실제 생명체에 대해서 타당하다고 단언하기에는 너무 이르다. 무엇보다도 실제 유전적 네트워크가 K=2를 갖는다는 것이 밝혀져야 한다. 그럼에도 이 착상은 아주 자극적이며 더 조사해볼 만한 가치가 있다.

불리안 네트워크와 같은 복잡계의 연구를 통해서 얻은 2번째 중요한 발견은 "자기조직적 임계성"(self organising criticality)이다. 만일 랜덤 불리안 네트워크가 복잡성의  영역(K=2, 또는 3)내에 있다면 초기조건에서의 변화가 마지막에 정착한 특정 끌개에 영향을 미치지 않을 것이다. 그렇지만 가끔 사소한 변화가 있고 최종적 끌개의 배열이 약간 달라진다. 바로 그런 경우 최종적으로 정착한 끌개의 유형이 완전히 달라진다.(이것을 애플릿에서 시도해볼 수 있다. 그러나 그것은 아주 희소함으로 그 마지막 결과를 볼 수 없을 가능성이 높다.) 흥미롭게도 이 거동은 실제 생명 시스템에 반영되어 있다. 이것은 모래 알갱이가 하나하나 떨어져서 모래더미를 무너뜨리는 사태의 규모에서도 관찰된다. 대부분의 사태는 작다. 그중 얼마는 더 크다. 그러나 아주 큰 것은 아주 희박하다. 이러한 현상은 진화상의 멸종의 규모에서도 관찰된다. 작은 규모의 멸종 사태들은 자주 발생한다. 그러나 대규모의 멸종 사태는 아주 드물게 일어난다.

일반적으로 대량멸종 사건은 혜성의 충돌과 같은 대파국에 의해서 발생하는 것으로 생각한다. 그러나 생태계를 복잡계의 또 다른 유형으로 본다면  대량멸종은 작은 멸종사건들에 후속해서 일어나는 것으로 계의 내재된 속성 가운데 하나이다. 이 개념 역시 경험적 확인이 필요하다. 그러나 이것은 유용한 개념이며 고생물학과 지질학에 연구의 새로운 방향을 제시하고 있다.

카우프만과 그의 동료들은 불리안 네트워크의 개념을 더 깊히 추급해 들어갔다. 이 가운데 "적합성"(fitness) 에 관한 연구가  포함되어 있는데  전구를 상호연결된 유전자로 보고 상호연결된 네트워크 이른바 "후성적 네트워크"(後成的; epigenetic network)를 연구했다.

앞서 본 것처럼 N개의 유전자 각각에 K개의 유전자들을 연결시킨다. 전체 유전형에 대한 각 유전자의 적합성의 기여도는 그것과 연결된 유전자들의 상태에 의존한다. 앞서 논의된 것처럼 조합할 수 있는 가능한 상태의 총수는 2^(K+1)이다. 이 조합의 각각은 0.0에서 1.0 사이의 값을 무작위적으로 부여받는다. 이것은 유전자가 연결된 유전자들과 함께 주어진다면 유기체에 얼마나 많은 적합성을 부여할 수 있는가를 가리키는 지표이다. 어떤 조합의 경우 적합성의 기여도는 0.45이고 또 다른 경우는 0.12이다.

이것은 각 유전자에 행해질 수 있다. 마지막으로 전체 네트워크(또는 게놈)의 적합성은 각 유전자의 적합성 기여도의 평균이다.

좌측 상태들의 조합

중간 특정한 조합에 대해 각 유전자가 기여할 수 있는 적합도

우측 3-유전자 네트워크의 전체적 적합성

 

이 NK모델에서 중심적 개념은 네트워크를 더 높은 적합성을 향해서 진화시킬 수 있다는 것이다. 각 시간단계에서 유전형에 적합성이 증가하도록 유전자 하나를 뒤짚는 것이 허용된다. 앞의 애플릿으로부터 얻은 직관을 토대로 카우프만과 그 동료들이 시뮬레이션을 통해서 찾아낸 결과를 예측할 수 있다. K가 높을 경우 유전자들의 상호연결도가 높아서 그러한 네트워크는 높은 적합성의 상태로 진화할 수 없다. 한 유전자의 적합성을 증가시키는 변화가 다른 많은 유전자들에 영향을 주기 때문이다. 요컨대 유전자들 사이의 많은 상충된 이해관계 때문에 적합성 지형은 낮은 봉우리들로 된 무작위 지형이 된다.

반대의 경우로 K=0인 경우를 생각해 보자.  각 유전자는 다른 유전자에 영향을 주지 않으면서 자유롭게 원하는 상태로 뒤집을 수가 있다. 이와 같은 네트워크는 쉽게 높은 적합성 지형으로 진화할 수 있다. 카우프만은 이것이 완만한 경사를 가진 하나의 봉우리로 된 후지산과 흡사하다는 의미에서 이것을 후지산 지형으로 불렀다.

그러나 이러한 네트워크는 생물학적 관점에서 별로 흥미롭지 않다. 카우프만은 K=2인 경우에 관심을 가졌는데 이것은 완전히 무작위적인 지형과 후지산 지형의 중간 어딘가에 있다. 이것은 몇가지 흥미로운 성질들을 갖고 있다.

첫째, 가장 높은 봉우리들은 서로 모여 있다. 그것들은 적합성 지형 상에서 무리(cluster)를 형성하고 있다.

  

둘째, 가장 높은 봉우리는 가장 넓은 끌개의 유역을 갖고 있다. 이 경우 적합성 지역의 어디에서 시작하더라도 가장 높은 봉우리로 향한 길을 쉽게 찾을 수 있다.

앞서 언급했듯이 이러한 현상들을 수학적으로 밝히지 못하고 있다. 그러나 실제의 진화를 설명할 수 있는 많은 잠재적 함의들을 갖고 있다. 카우프만은 이 결과들은 또 생물의 네트워크에도 적용할 수 있다고 한다. 만일 이것이 사실이라면 생물학자들이 예상하지 못한 어떤 질서가 실제의 적합성 지형 속에 있다는 것이다. 유기체는 낮은 봉우리 보다 가장 높은 봉우리 쪽으로 유인되기 쉬운데 그것은 1) 가장 큰 끌개유역을 제공받고 있고, 2) 서로 가까이 모여 있기 때문이다. 진화생물학자들은 이러한 아이디어에 흥미를 갖기 시작했는데 왜 생명체들이 빈약한 국지적 봉우리에 고착되지 않고 높은 적합성의 상태로 효율적으로 진화하는 이유를 설명할 수 있는 통찰을 제공해주고 있기 때문이다.