본문 바로가기

인공생명/세포자동자

세포자동자


세포자동자


 1.세포자동자란 무엇인가?
 
2. 1차원 세포자동자 3. 세포자동자 규칙판 만들기
 
4. 1차원 세포자동자속의 세계
 
5. 2차원 세포자동자
 6
. 2차원세포자동자와 라이프 게임
 7
. 세포자동자 실행소프트웨어
 8
. 울프람과 세포자동자 규칙군의 분류
 9
. 랭턴의 lambda와 규칙군의 분류
 
10. 세포자동자와 혼돈의 가장자리
 
11. 세포자동자와 생명의 의미




 1.세포자동자란 무엇인가?


  필자는 컴퓨터의 스크린 세이버로써 "
aquarium"(수족관)이라는 조그마한 소프트웨어를 사용하고 있다.이 가상의 수족관안에 빨강,노랑,파랑의 3종의 올챙이들이 끼리끼리 떼지어 유영하고 있다.그러나 무리끼리의 사이좋은 유영은 오래가지 못한다.맞은 편에서 다가오는 다른 무리와 충돌이 발생하고 이것으로 지금까지 일사불란하던 대열이 일시에 깨어진다.대열의 앞부분에 있어 정면충돌한 올챙이들은 어쩔줄 몰라 전후좌우로 좌충우돌하면서 허둥된다. 대열의 후미에 있던 올챙이들은 낌새를 채고 다른 곳으로 재빨리 방향을 틀어 달아난다. 충돌의 여파로 한동안 각 색깔의 올챙이들이 섞여 우왕좌왕하는 혼란이 계속된다.그러다가 같은 색의 올챙이 두세마리가 우연히 모이게 되면 흟어져 있던 같은 색의 올챙이들이 그 주변으로 몰려들기 시작하고 곧이어 무리들 끼리의 정연한 대열이 새로 만들어진다.
 
 이것이 주는 느낌은 디즈니의 만화영화의 애니메이션과는 어딘가 다르다.이것을 보고 있으면 "살아있는" 것을 보고 있다는 느낌이 저절로 든다.이 차이는 캐릭터의 사실성의 여부에서 오는 것은 아니다. 이것은 조그마한 동그라미와 그 후미에 선이 그어져 있는 극히 단순한 형태로 그저 올챙이를 흉내내고 있는 정도에 지나지 않기 때문이다.이 차이는 그 거동에 있다.
 
 다른 종과 부딪혔을 때 꼬리를 떨면서 진저리치는 모습,낌새를 챈듯 재빨리 방향을 바꾸어 달아나는 모습,자기무리를 발견하고는 그곳으로 가기위해 이리저리 몸을 비트는 모습 등은 아주 인상적이다. 이것을 물론 애니메이션으로도 구현할 수 있겠지만 그것이 구현할 수 없는 그 무엇이 있다.그 거동에서 묻어 나오는 감정이다.꼬리를 흔들면서 떠는 모습이 너무도 자연스러워 분명히 혐오의 감정으로 진저리치고 있는 것 같아 실소를 자아내게 한다.디즈니영화나 컴퓨터 게임의 캐릭터의 거동에서 아직 그런 느낌을 가져본 적이 없다.  이 차이는 어디서 오는 것일까? 일반적인 애니메이션은 각각의 캐릭터들의 형태,동작,표정들을 제작자가 일일이 규정해주어야 한다.캐릭터들간에 서로 말하고,싸우고,부딪히는 등 온갖 다양한 거동들을 보여주지만 그것은 외양상의 것이며 그들 상호간에는 아무런 관계도 맺어지고 있지 않다.명령에 따라 조종되는 꼭두각시일 뿐이다.이것이 바로 "하향식(downward) 설계"이며 기계의 전형적 작동방식이다.여기에는 전체에서 부분으로의 정보의 일방통행이 있을 뿐이다.
 
 이 "수족관"의 설계는 반대방식으로 행해진다.여기에는 전체에 대한 규정은 없으며 각각의 올챙이들이 다른 올챙이들에 대해서 어떻게 거동할 것인가만을 규정하고 있다.이 규칙은 다음과 같다.


1.다른 개체와 일정한 거리를 유지하는 규칙.
2.대열을 이루고 있는 같은종의 개체끼리 속도를 일정하게 유지케하는 규칙.
3.이웃하고 있는 같은 종의 중심으로 향하려는 규칙.(그 수에 따라 중심은 시시각각으로 변한다.또 그자신의 이동자체가 중심을 변화시킨다)


 여기서 개체들의 거동을 결정하는 것은 이웃하고 있는 개체에 대한 정보이다.같은 종을 만나면 모여서 대열을 이루려 할 것이고 다른 종을 만나면 회피할려고 할 것이다.이 규칙에 따른 각 개체들의 개별적 거동이 전체 차원에서 무리짓기라는 집합적 거동을 만들어낸다.그 과정에서 생겨나는 인상적인 거동들은 미리 규정된 것이 아니라는 점에서 창발적 현상들이다.전체는 부분들의 복잡한 상호작용의 결과이며 이 결과가 역으로 부분들에 작용하면서 애니메이션의 선형적 거동과는 다른 비선형적인 복잡한 거동을 만들어낸다.이것이 바로 "상향식(upward) 설계"이며 올챙이의 미묘한 거동은 바로 여기서 나오는 것이다.

  이 상향적 특성과 그것에서 나타나는  창발적 특성을 보다 근본적 수준에서 잘 보여주는 것이 "세포자동자"(cellular automaton)이다. 1940년대 폰노이만(von Neumann)은 생명을 '합성'하는데 관심을 가졌다. 이 계획을 위한 중요한 단계로서 인공적인 자기재생산계를 연구했다. 그의 처음의 개념적 디자인은 기계적인 것이었다. 로봇이 호수위를 떠다니면서 거기서 에너지와 원료를 추출해서 자기자신의 복사본을 만드는 것이다. 폰노이만이 실제 그러한 것이 현실화되리라고 생각한 것 같지는 않다. 그의 진정한 목적은 '자기재생산'을 이해하는 것이었다.
 
 울람(S.Ulam)은 맨허턴 계획에 사용되던 컴퓨터를 사용해서 기하학적 패턴을 재귀적 방식으로 재생산할 수 있는 프로그램을 만들었다. 이것은 재생산의 참된 특징은 물리적 로봇의 3차원세계 보다 추상적인 기하학적 공간에서 더 쉽게 연구될 수 있다는 것을 시사한다. 이 시사가 폰노이만에게 중요한 개념적 돌파구를 열어주었다. '세포자동자이론'이 출현한 것이다.세포자동자를 규정하는 것은 크게 다음 3가지이다.

1.세포당 상태의 수
2.세포의 이웃
3.규칙

 1.세포당 가지는 상태의 수. 세포당 두 상태만을 가지는 2진수의 세포자동자는 가장 다루기 쉬우며 가장 널리 연구되어온 것이다.그러나 어떤 상황에서는 더 많은 상태를 가지는 세포자동자를 연구하는 것이 유용할 경우도 있다. 예컨대 폰노이만은 29개의 상태를 가지는 자기재생산 세포자동자를 연구했다.
 2.세포의 '이웃'(neighborhood)을 구성하는 방식. 여기서 이웃이란 어떤 세포의 다음 세대에 영향을 줄 수 있는 인접한 세포이다. 이웃은 그 세포자신도 포함한다. 1차원 세포자동자에서 이웃을 정의하는 가장 흔한 방식은 어떤 세포의 좌우에 있는 하나 또는 두 세포이다. 2차원 세포자동자의 경우 두가지 정의방식이 널리 연구되어 왔다.'폰 노이만 이웃'(von Neumann neighborhood)과 '무어 이웃'(Moore neighborhood)이 그것인데 전자는 어떤 세포의 동서남북의 넷 세포가 이웃이고,후자는 거기에 동서,서남,남북,북동의 넷 세포를 부가한 8개의 세포가 이웃이다.

                                                                                 










                 










                                                                   <그림1>폰노이만 이웃과 무어 이웃

  3.다음 세대에서 그 세포의 상태를 규정하는 진화의 규칙. 규칙은 이웃세포의 가능한 상태의 배열 집합 가운데 어떤 것을 선택함으로 만들어진다. 초기 상태가 주어지면 그것의 이웃의 상태가 분석되고 여기에 주어진 규칙이 적용됨으로써 그 세포의 다음 상태가 결정된다.



2. 1차원 세포자동자


세포자동자가 어떻게 작동하는가를 보기 위해 우선 가장 간단한 1차원 세포자동자의 몇가지 사례를 검토해 보자. 상태공간은 세포들이 거주하는 길게 이어진 칸들이다. 각 세포들은 on,off의 두 상태만을 갖는다고 하자. 생세포(on)는 ■ 으로,죽은 세포(off)는 □ 으로 표시한다. 다음 규칙 "어떤 세대에서 중앙세포가 on이고 인근세포가 모두 on이 아닐 때만 그 세포는 다음세대에서 on으로 남는다.그외에는 모두 off이다"를 □■□ 와 같이 표기한다.

다음 세대는 초기배열에서 □■□ 의 형태가 있는가를 검토함으로 얻어진다.이 배열이 있을 때는 중앙세포는 on이 된다.모든 세포가 off인 배열은 어디에도 □■□ 인 배열이 없기 때문에 off인채로 머물게 된다.
배열이 □□□□□□■□□□□□□ 인 형태에 이 규칙을 적용해 보자. 이 경우 오로지 한곳에 □■□ 인 배열이 있다. 다음세대에도 이 상태에는 아무런 변화가 없을 것이다. 이것은
그림2a와 같다. 다음 배열을 바꾸어 두개가 연속적으로 on인 □□□□□□■■□□□□□□ 의 경우를 보자. 두 on 세포 중 어느 것도 이웃에 두 off 세포를 갖고 있지 않다. 따라서 후속 세대는 계속 off상태에 있을 것이다.
이웃에 on 세포가 없는 경우와 적어도 하나의 이웃 on 세포를 가지는 약간 더 복잡한 배열의 경우를 보자.다음 세대에서 이웃 on 세포를 가지는 on 세포는 죽지만 이웃에 on 세포가 없는 고립된 on 세포는 살아남는다.
그 사례가 그림2b이다.

 이제 규칙을 바꾸어 □□■ 인 경우를 보자. "중앙의 off셀이 자신의 오른쪽에 on셀을 가질 경우 자신은 다음 세대에 on셀이 된다. 그렇지 않은 경우는 다 죽는다. 하나의 on세포로 된 □□□□□□■□□□□□□ 의 경우를 보자.여기에는 □□■ 에 해당하는 형태가 꼭 하나있다. 그러므로 이 배열의 중앙세포는 다음 세대에 on이 될 것이다. 다른 것은 모두 off이다. 그 결과는 현재 on인 세포의 왼쪽에 있는 세포가 다음 세대에서 on이 되며 세대가 계속될 수록 on세포가 계속 왼쪽으로 한 칸씩 이동한다.
이것이 그림 2c이다.
모눈종이에 on세포를 ■ 으로,off세포를 □으로 표시하면서 그려 보면 규칙에 따라 여러가지 다른 무늬의 패턴들이 얻어질 것이다.그러나 이것을 실시해 보는 가장 빠른 방법은 컴퓨터를 이용하는 것이다.
시중에서 쉽게 구해볼 수 있는 소프트웨어로
LINE-CA가 있다.너무 간단해서 세포자동자의 복잡한 거동을 알아보는데는 적합하지 않지만 간단하기 때문에 세포자동자의 기본원리를 알아보는데는 오히려 도움이 된다. 그러나 이것은 전체패턴을 보는데는 불편하다.이것에 익숙해지면 SIM_ONE_CA를 이용하면 편리할 것이다.다른창에 띄어놓고 그것으로 확인하면서 글을 읽으면 훨씬 이해하기 쉬울 것이다.

다음 애플릿을 사용하면 여기서 바로 확인해볼 수 있다.

http://tilde-schaller.home.cern.ch/~schaller/complex/CA1d/CA1d.html

 LINE-CA 프로그램을 구동시키면 다음과 같은 8개의 가능한 배열들이 나온다.

□□□  □□■  □■□  □■■  ■□□  ■□■  ■■□  ■■■  
 

두번째 줄의 □은 8개의 배열 가운데 어느 것을 다음 세대에 on으로 할 것인가를 결정하는 옵션이다. 자판의 화살표 키를 이용해서 원하는 배열들에 가서 스페이스바를 누르면 그것이 ■으로 반전되면서 선택된다.그림2의 왼쪽의 무늬를 만들려면  아래 그림처럼 세번째 배열의 아래 상자를 선택하면 된다.  


  □□□  □□■  □■□  □■■  ■□□  ■□■  ■■□  ■■■  
□  □□  □□  □□  □□  □□  □□ □


엔트키를 누르면 그 규칙을 당신이 선택한 것이다.이제 모니터에 격자판이 나타나는데 화살표키와 스페이스바를 이용해서 격자안에 세포의 초기배열을 원하는대로 그려넣어라.그런 다음 엔트키를 치면 그 규칙에 의해 생성된 패턴이 모니터 전체를 순식간에 채운다.차근차근 한세대 씩의 전개를 보고싶다면 자판의 S키를 사용하면 된다.한번 누를 때 마다 한 세대씩 진행한다.  
이 프로그램을 사용해서  "현재 off인 세포가 오직 하나의 이웃 on세포를 가질 때만이 다음세대에서 on으로 되고(따라서 이웃 on세포가 왼쪽에 있든,오른 쪽에 있든 상관없다) 그외에는 off이다"는 규칙을 검토해 보자.이것은 다음 규칙을 선택한 것이다.


 □□□  □□■  □■□  □■■  ■□□  ■□■  ■■□  ■■■  
□  □□  □□  □□  □□  □□  □□  □

이 규칙하에서 □□□□□□■□□□□□□ 의 초기배열을 갖는 한개의 on세포는 어떻게 진화할까? 규칙의 전반부는 on세포를 세대마다 한칸 오른쪽으로 이동시킨다. 반면 후반부는 on세포를 왼쪽으로 한칸씩 이동시킨다. 결과적으로 on세포는 계속 증식되어간다. 만일 첫세대의 배열이 □□□□□□■□□□□□□ 이라면 둘째 세대는 □□□□□■□■□□□□□ 이고 다음 세대는 □□□□■□□□■□□□□ 이다. 계속해서 □□□■□■□■□■□□□, □□■□□□□□□□■□□, □□■□■□□□□□■□■□□ 으로 계속된다. 이 진화를 긴 세대 동안 따라가 보면 재미있고 시사적이다. 그림3이 그것을 보여주고 있다. 이것은 '시어핀스키 가스켓'(Sierpinski's Gasket)과 아주 닮았다.그 단순성에도 불구하고 ■□□ 와 □□■의 규칙을 가진 세포자동자는 시간과 공간상에 예측하지 못한 복잡한 패턴을 만들어 낸다.

 이러한 도식적인 규칙표는 직관적이기는 하지만 복잡한 규칙들을 나타내기에는 적합하지 않다. 이것을 개선한 것이 데이비드 피크(D.Peak)의 표시판이다.다음 규칙 □■□,□□■,■□□,■■■을 보자.여기서 두개의 규칙 □□■와 ■□□은 하나의 규칙 즉 "중앙세포가 off이고 이웃에 하나의 on세포를 가지면 그 중앙세포는 다음세대에서 on이다."로 총괄적으로 표현할 수 있다.이것이 '총괄규칙'(outer totalistic rules)인데 이 방법으로 위의 규칙을 표현하면 다음과 같다. "중앙세포가 on이고 아무런 on이웃도 갖고 있지 않거나,또 중앙세포가 off이고 하나의 on이웃을 갖거나,또는 중앙세포가 on이고 두 on이웃을 가진다면 중앙세포는 다음세대에 on이고 그외의 경우는 off이다."
이 규칙에 의해 만들어지는 그림은 그림4와 같다.



3. 세포자동자 규칙판 만들기


총괄적으로 표현했지만 말로 표현하면 여전히 복잡하다.이것을 간단한 기호로 표시한 것이 데이비드 피크의 '규칙판'(rule table)이다. 이 규칙판을 사용하면 상당히 복잡한 규칙들도 쉽게 알아볼 수 있다.아래 그림은 그 예로서 몇가지 규칙판을 보여주고 있다.
 

사용자 삽입 이미지

 a는 1차원 3세포의 규칙판(아직 빈칸이지만)이다. 박스위의 숫자는 중앙세포의 이웃의 on세포의 수를 나타낸다. 두칸으로 된 박스의 왼쪽 박스는 중앙세포가 on인지의 여부를,오른쪽 박스는 중앙세포가 off인지의 여부를 표시하기 위한 것이다.만일 왼쪽 박스에  ×가 표시되어 있다면 이것은 현재 중앙세포가 on이라는 것을 의미한다.마찬가지로 오른쪽 박스에  ×가 표시되어 있다면 현재 중앙세포가 off라는 것을 의미한다. 규칙판 b를 보자. ×가 표시된 경우만을 보면 되는데 두번째 박스의 왼쪽 박스에   ×가 표시되어 있으므로 이것은 현재 중앙세포가 on이라는 것을 말해준다. 또 박스위에 '1'이 씌여져 있으므로 이것은 이웃 on세포가 하나라는 것을 의미한다.

 이 둘을 종합해서 읽으면 "현재 on인 중앙세포가 이웃에 정확히 하나의 on세포를 갖고 있다면 중앙세포는 다음 세대에 on이다"는 규칙으로 해독된다.이것은 그림판 ■■□과 □■■의 총괄규칙이다. 규칙판c는 다음과 같이 읽혀진다. "현재 off인 중앙세포가 이웃에 정확히 하나의 on세포를 갖고 있다면 중앙세포는 다음 세대에서 on이 된다". 이것은 그림판 ■□□와 □□■의 총괄규칙으로 앞서의 그림3을 만들어내는 규칙이다. 규칙판d는 "중앙세포가 하나의 on이웃을 가지면 중앙세포는 그것이 현재 on이냐 off이냐에 관계없이 다음 세대에서 on이다"는 규칙이다. 규칙판e는 그림4를 만든 복잡한 규칙 □■□,□□■,■□□,■■■의 간단한 총괄표라는 것을 알 수 있다.
 
 지금까지 검토해온 1차원,셋 세포의 경우는 아주 간단해서 굳이 피크의 규칙판을 사용할 필요없이 그림판을 이용해도 무방할 것이다.그러나 이웃 세포의 수가 넷인 세포자동자(자신을 포함해서 다섯)의 경우는 규칙을 그림판으로 표시하는 것은 아주 번거롭다.그러나 피크의 규칙판을 이용하면 간단히 나타낼 수있다.


4. 1차원 세포자동자속의 세계



<
그림2a>

사용자 삽입 이미지

       <그림2b>

사용자 삽입 이미지

  <그림2c>

사용자 삽입 이미지
  <그림3> 규칙 ■□□ , □□■하에서 한개의 on 세포로 부터의 진화.

사용자 삽입 이미지

 <그림4> 규칙 □■□,□□■,■□□,■■■ 하에서 한개의 on세포로 부터의 진화.

사용자 삽입 이미지

5. 2차원 세포자동자


 라이프 게임은 2차원 세포자동자 가운데 가장 잘 알려진 것이다. 이것은 영국의 수학자 존 콘웨이(J.Conway)에 의해서 개발된 것으로 간단한 규칙을 적용해서 생명과 같은 복잡한 현상을 표현할 수 있다는 것을 보여준 최초의 시스템이다.우선 라이프 게임에서의 상태,이웃세포,규칙은 다음과 같다.

  •  상태: 각 셀의 상태는 0 또는 1의 두가지 상태를 가진다.0의 겨우 세포(셀)가 죽었음을 의미하고 1은 세포가 살아있음을 의미한다.
  • 이웃세포:라이프게임은 2차원 세포자동자로 자신의 주변의 8개의 셀을 이웃으로 하는 무어게임을 따른다.
  • 규칙
    1.살아있는 이웃 셀이 1개 이하이면 가운데 셀은 고립돼 죽는다.
    2.살아있는 이웃 셀이 4개 이상이면 가운데 셀은 인구과잉으로 죽는다.
    3.살아있는 이웃 셀이 3개이면 가운데 셀은 새로 태어난다.
    4.나머지의 경우 가운데 셀의 상태는 변하지 않는다.


 말로 표현하면 상당히 복잡하지만 앞의 피크의 표시판으로 다음과 같이 간단히 나타낼 수 있다.

사용자 삽입 이미지

 이 규칙에 따라 몇가지 사례를 예시하면 다음과 같다.

                                   <그림6>

사용자 삽입 이미지

사용자 삽입 이미지
사용자 삽입 이미지


6. 2차원세포자동자와 라이프 게임


2차원 세포자동자를 소개하고 있는 정평있는 책으로 『회귀우주』(The Recursive Universe)라는 책이 있다. 여기에는 콘웨이(J.H.Conway)가 개발한 2차원 세포자동자인 '라이프게임'(Life Game)의 많은 패턴들이 소개되고 있는데 이 대부분이 이 Life 32에 적재되어 있어 편리하다. 또 속도가 빠르고 줌기능이 있어 특히 대형의 패턴의 진행과정을 추적하는데도  편리하다. 회귀우주에 소개되고 있는 가장 큰 패턴인 '번식자'breeder 및 '증기기관차'puffer train, 라이프 게임이 연산(演算)능력이 있음을 입증하는 저밀도총 thin gun과 저밀도 갈퀴thin rake가 적재되어 있다.

 라이프는 1970년,케임브리지 대학 콘빌-카이우스 칼리지의 젊은 수학자 콘웨이(J.H.Conway)에 의해서 개발되었다. 그리고 이것은 <사이언티픽 아메리칸>에 가드너(M.Gadner)가 2회에 걸쳐 기고한 칼럼(1970년 8월호,1971년 2월호)을 통해서 세상에 알려지게 되었다. 그 후 이 게임은 많은 광적인 라이프게임 매니아들을 만들어 내었다. 한 때는 컴퓨터의 소중한 시간이 이 게임에 낭비되고 있다는 비난을 받은 적도 있다.(1974년 타임지는 수백만 달러의 컴퓨터 사용료가 증대일로에 있는 라이프게임 매니아들에 의해 낭비되고 있다고 불평했다.) 값싼 가정용 컴퓨터의 등장은 더 많은 애호가들에게 라이프게임을 즐길 수 있는 기회를 열어 주었다.

라이프는 게임으로 분류되기도 하고 가끔은 비디오예술의 일종으로 분류되기도 한다. 그러나 어떤 것도 라이프의 매력을 표현하기에 충분하지 않다. 확실히 라이프는 우리에게 친숙한 비디오 게임과 닮은 어떠한 것도 없다. 이 게임에는 승자도 패자도 없다. 이것은 백남준의 비디오 만화경 -텔레비젼 스크린에 추상적인 움직이는 무늬를 만들어 내는 방식- 과 더 닮았다.
먼저 사각형의 격자속에 on세포의 초기배열과 on세포의 다음세대를 생산할 간단한 규칙을 규정해 준다.다음은 컴퓨터에 맡겨 놓으면 된다.

라이프 패턴중 간단한 것은 수작업으로도 검토할 수 있다. 예컨대 고립된 세포는 다음 세대에 죽는다. 붙어있는 두 on세포도 마찬가지이다. 고립된 네개의 on세포는 그 상태로 얼어붙은 붙박이가 된다.(그림10-1) 이것은 동력학의 고정점에 해당한다.이것은 '블록'이라고 불리는데 이러한 붙박이로 '벌집'이라는 것도 있다.(그림10-2) 이외에 두 상태를 반복하는 '깜박이'라는 것도 있다.(그림10-3) 그리고 마치 걸어가는 듯이 보이는 '글라이더'라 불리는 것도 있다.이런 형태들은 모눈종이에 그려봄으로써 추적할 수 있다.

사용자 삽입 이미지
  
사용자 삽입 이미지

 

사용자 삽입 이미지

사용자 삽입 이미지
사용자 삽입 이미지

 <그림7>라이프의 몇가지 기본 패턴들.

 물론 더 복잡한 것도 있다.그림11은 'r펜토미노'(r-pentomino)라고 불리는 것인데 아주 간단한 형태임에도 불구하고 아주 복잡한 대형패턴으로 발전해간다는 것이 알려지게 되었다.이 패턴의 성장은 영원히 지속될 것인가? 이 때 까지만 하더라고 이 추적은 수작업으로 행해졌다. 이 패턴이 과연 무한히 성장하는 패턴이 아닌가 하고 추측했지만 수작업의 한계상 답할 수 없는 것이었다.여러분은 지금 10초도 채 안걸려 그 답을 알 수 있다.그것은 무한히 성장하는 패턴이 아니다.1103세대 후 6개의 글라이더를 포함한 안정된 형태로 정착되어 버린다.

 그러면 무한히 지속되는 패턴은 없는 것일까? 콘웨이는 마틴 가드너의 칼럼을 통해서 한없이 성장하는 패턴을 만들거나 또는 그것이 불가능하다는 것을 입증하는 사람에게 50불(정말 엄청난 거금이다?)의 상금을 주겠노라고 공언했다. 50불의 상금은 글라이더총을 만든 MIT의 고스프외 다섯 학생에게 돌아갔다. 더나아가 그들은 13개의 글라이더를 서로 충돌시켜 글라이더총을 만드는 방법을 발견했다. 이러한 아이디어를 통해서 콘웨이는 자기재생산 라이프패턴이 있다는 것을 보여줄 수 있었다.


사용자 삽입 이미지


사용자 삽입 이미지

<그림8>[상]글라이더 총이 만들어지는 초기배열 [하]글라이더열을 방출하고 있는 글라이더총


 콘웨이는 대담한 추측을 했다. 생세포가 무작위로 배열된 무한한 라이프공간이 있다고 하자. 무한한 공간이라면 아무리 복잡하다 하더라도 초기의 라이프공간의 어디에선가 발생할 것이다.그러므로 무한한 초기배열의 어디에선가 콘웨이의 자기재생산패턴의 복사본들이 생겨날 수 있다. 콘웨이의 라이프대상들은 라이프공간을 가로질러 이동할 수 있고 초기배열로 부터 나온 다른 대상과 만날 가능성이 있다. 한쌍의 글라이더들을 적절하게 발사하면 먼거리에서 서로 충돌해서 그중 한 글라이더가 도로 돌아오게 할 수 있다. 만일 글라이더가 돌아오지 않는다면 그 한쌍의 글라이더들은 다른 라이프대상과 충돌했을 것임에 틀림없다. 즉 무한한 라이프공간 어디에선가 자기재생산하고 움직이는 패턴이 있다. 이것들의 몇개는 다른 대상과 충돌하여 변형을 일으킬 것이다. 대부분의 돌연변이는 치명적이다. 그러나 그중 몇몇은 유익할지 모르며 더 적합한 형태가 출현할지도 모른다. 이러한 방식으로 라이프공간의 거주자들은 일종의 진화를 체험할 수 있다. 충분한 시간이 주어진다면 지성을 가진 자기의식적 존재가 진화해서 라이프공간을 의도적으로 여행하고 있을지 모른다.(콘웨이의 추측을 논리적 극단으로 밀어붙이면 우리자신이 우주라는 일종의 라이프게임속의 라이프대상이 아닐까?)



7. 세포자동자 실행소프트웨어


<Line-CA >
 아주 간단해서 세포자동자의 직관상을 얻는데 유용하다.

<Mcell>  가장 최근에 나온 최고의 소프트웨어.특히 1차원 세포자동자의 거동을 조사해 보는데 아주 유용한 소프트웨어이다. 1D Totalistic->Settings-Rule을 선택해서 Survival과 Birth의 값을 바꾸어 봄으로써 재미있는 패턴들을 얻을 수 있다.필자는 주로 CALIFE를 사용해왔지만 이것이 인터페이스 기능이 훨씬 뛰어나고 훨씬 더 직관적이다. 자세한 사용법은 생명의 철학 폴더 안의 "MCELL을 통해본 세포자동자의 세계" 참조.


사용자 삽입 이미지

 
<그림5>이웃이 넷(자신을 포함해서 다섯)인 랭턴의 세포자동자를 만들기 위한 규칙표.


<Life32>
mcell이 1차원 세포자동자로 강력하다면 이것은 2차원 세포자동자로 강력하다.Life관련 소프트웨어 가운데 가장 최신 버전.속도가 빠르고 zoom기능이 크게 보강되었다.Life의 23/3 규칙 뿐만 아니라 다른 규칙도 시험해 볼 수 있다.그리고 알려진 거의 모든 life패턴을 적재하고 있다.life1.06이 그 뛰어난 기능에도 불구하고 도스모드였어 인터페이스 기능이 뒤떨어져 불편했는데 이것을 말끔히 해소했다. <사용법>은 생명의 철학 폴더 안의 "콘웨이의 라이프 우주의 탐색(2)_Llfe32의 소개" 참조



8. 울프람과 세포자동자 규칙군의 분류


 가장 간단한 '이웃이 둘이고,상태가 on 또는 off'인 1차원,3세포의 경우에도 규칙에 따라 혼돈적인 무늬가 만들어지기도 하고 또 경우에 따라서는 고정적인 무늬를 보여주기도 한다. 2차원 세포자동자의 경우 대부분 대칭적 패턴으로 얼어붙거나 끝없는 혼돈상태를 보여준다. 라이프게임과 같은 놀라운 다양성을 보이는 것은 극히 드물다. 이러한 다양한 형태들-혼돈,얼어붙은 질서,복잡한 다양성-은 규칙들의 어떤 차이에서 오는 것인가? 지금까지 우리가 검토해 본 것이 세포자동자의 '현상'이었다고 한다면 이 질문은 그 현상적 차별성의 '근거'에 대한 물음이다.

 여기에 대한 최초의 탐색은 울프람(S.Wolfram)에서 시작된다. 울프람은 무늬의 패턴들은 각각 다르지만 특징에 따라 대략적으로 몇가지 형태들로 분류할 수 있다는 것을 알게 되었다.그는 1차원,3세포(s=2,n=3)의 세포자동자에 나타나는 무늬의 패턴들을 4가지 종류로 분류했다.

유형Ⅰ  모든 것은 죽는다.(또는 산다)
유형Ⅱ  생세포의 패턴이 몇세대 후에 똑같이 반복된다.
유형Ⅲ  생세포의 패턴이 혼돈적 양상으로 성장한다.
유형Ⅳ 생세포의 패턴은 성장하다가 복잡한 방식으로 구조화되어 일정한 형태의 "움직이는" 패턴을 만들어 낸다.유형Ⅳ가 가장 흥미로운 것인데 이것은 아주 드물다.

규칙의 어떤 차이가 패턴들의 차이를 발생시키는가? 이것을 알아보는 직접적인 방법은 가능한 규칙군들을 모두 조사해 보는 것이다.사실 울프람은 이 방법을 사용해서 4가지의 유형을 찾아내었다.
1차원,3세포에서의 가능한 규칙군들의 수는 얼마인가? 이것을 구하기 위해서는 우선 셋 세포의 가능한 배열방법의 수를 찾아야 한다.셋 세포가 각기 on또는 off가 될 수 있기 때문에 가능한 배열방법은 2 2 2로 8가지로 이것은 다음과 같다.

       □□□ □□■ □■□ □■■ ■□□ ■□■ ■■□ ■■■

 간단히 □을 0,■을 1로 표기하면 (000),(001),(010),(011),(100),(101),(110),(111) 등 23 즉 8가지이다.
이 배열로 부터 얼마나 많은 규칙을 만들어 낼 수 있는가?  규칙은 8개의 조건절을 가진 문장이라 볼 수 있다. "만일 1.(000)이면 중앙세포는 ___이다. 2.(001)이면 중앙세포는 ___이다. ...   8.(111)이면 중앙세포는 ___이다."

이 ___는 다음 두 가능지 즉 "다음 세대에 on이다"와 "다음 세대에 off이다"중의 하나를 나타낸다. 예컨대 "만일 (100) 또는 (001)이면 중앙세포는 다음 세대에 on이고,그외는 off이다"는 규칙 ■□□ □□■ 는 실제로 다음을 의미한다. "1.만일 (000)이면 중앙세포는 off이다, 2.만일 (100)이면 중앙세포는 on이다, 3.만일 (010)이면 중앙세포는 off이다, 4.만일 (001)이면 중앙세포는 on이다, 5.만일 (110)이면 중앙세포는 off이다, 6.만일 ...., 8.만일 (111)이면 중앙세포는 off이다." 두개의 가능한 귀결을 가진 8개의 조건문이 있기 때문에 우리는 2 ×2 ×2 ×2 × 2× 2× 2× 2 =28=256개의 규칙들을 구성할 수 있다. 일반적으로 세포의 가능한 상태의 수가 S이면 Sn개의 배열이 가능하고 S의 Sn 제곱의 규칙들이 생겨난다.이 규칙들을 1과 0으로 나타내면 다음과 같다.

1)   0 0 0 0 0 0 0 0
2)   0 0 0 0 0 0 0 1
3)   0 0 0 0 0 0 1 0
4)       .
.        .
.        .
254) 1 1 1 1 1 1 0 1
255) 1 1 1 1 1 1 1 0
256) 1 1 1 1 1 1 1 1    

여기에 256개의 규칙군들이 있다.이 규칙공간 전체를 탐색해보는 것은 그렇게 어려운 일은 아니다. 한개의 규칙을 검토하는데 1분이 걸린다면 4시간 15분만에 검토를 끝낼 수 있을 것이다. 이것은 반나절의 작업이다.

 그러나 이웃의 수가 증가하면 규칙군들의 수는 것잡을 수 없이 증대된다.예컨대  s=2,n=5의 경우를 보자.이 경우  즉 4,294,967,296개의 규칙군들이 있다. 이제 1초에 한개의 규칙군을 검토할 수 있도록 컴퓨터의 속도를 개선시켰다고 하자. 얼마만큼의 시간이 소요될까? 모든 가능성을 검토하기위해서는 무려 136년을 1초도 쉬지 않고 일해야 한다. s=2,n=9인 무어 이웃으로 된 2차원 세포자동자의 경우 이것은 이다. 이 값은 얼마나 될까? 이렇게 거대한 수를 어떻게 이해할 수 있을까? 초당 1조개의 규칙들을 검토할 수 있는 컴퓨터를 가지고 있다고 하자. 그럼에도 이것은 너무 느리다. 우주에 있는 모든 입자가 컴퓨터이고 이 모두 초당 1조개의 규칙들을 검토할 수 있다고 하자. 빅뱅시 부터 이 작업을 해왔다고 해도 지금까지 검토된 것은 전체 규칙공간의 고작 1034분의 1에 지나지 않는다.

 s=2,n=5인 세포자동자도 탐색을 위해 전생애를 투자해도 모자랄 만큼 터무니없이 거대하다. 그러나 이것은 아무것도 아니다. 세포당 상태수를 더 많이 허용하면 가능한 규칙공간은 폭발적으로 증대한다. 다음의 사례를 보자. s=3이고 n=3인 1차원 세포자동자를 보자. 이것은 s=2,n=3인 경우가 256개의 자동자를 갖는데 대해  즉 7,625,597,484,987개의 자동자를 갖고 있다. 세포당 2상태를 가지는 무어자동자의 경우2의 29제곱은 155자리인데 대해 상태를 3으로 하면 3의 39제곱으로 9,392자리이다. 하물며 무어의 규칙공간에 셋 상태를 부여했을 때 그것이 얼마나 큰지를 실감나게 전달할 방법이 없다.

 이것은 다음 2가지 사실을 확인시켜 준다. 무어 세포자동자와 같은 아주 간단한 동력학적 계도 아주 놀랄만큼 많은 가능한 규칙공간들을 갖고 있어 그것의 행태의 완전히 아는 것은 적어도 울프람의 직접적 방법으로는 불가능하다. 그러므로 규칙군들을 분류하고 그것들의 類적 특성을 찾는 간접적 방법에 의존하는 수 밖에 없다.

1980년대 중엽에 랭턴은 이 터무니없이 거대한 규칙공간을 여행하는 방법을 찾아내었다. 이 변수는 랭턴의 λ(람다) 로 알려져 있는데 이것은 다음과 같이 정의된다.

         
 
λ  = 생세포를 산출하는 배열의 수/배열의 총수


다음 규칙의 λ값을 계산해 보자.

          ■■■□□ ■■□■■ ■□■■■ ■□■□□ ■□□□□
          □■■□□ □□■■□ □□■□■ □□■□□ □□□□■

s=2,n=5인 경우 배열의 총수는 25=32이다.이 중 위의 10개의 배열만이 중앙세포를 다음세대에 on이 되게 하므로  λ=10/32 로 이것은 유형2에 해당한다. 여기에다 □■□□□,□□□■□의 배열을 추가하면 λ =12/32로 유형 4가 된다. 또 이것에 ■□□■□ □■□□■의 배열을 더 추가하면  λ=14/32로 유형3이 된다.


사용자 삽입 이미지

<그림9>유형2의 얼어붙은 1차원 세포자동자.

.

사용자 삽입 이미지

<그림10>구조를 내포한 유형4의 1차원 세포자동자.


사용자 삽입 이미지

<그림11>혼돈적인 유형3의 1차원 세포자동자.



9. 랭턴의 lambda와 규칙군의 분류


 지금까지 λ값에 대한 우리의 논의를 s=2,n=5인 특수한 경우에 한정해 왔다.우리는 지금 임의의 s와 n으로 된 세포자동자의 규칙공간들을 탐색하기를 원한다.그러므로 λ에 대한 논의를 일반화시킬 필요가 있다.
직관상을 얻기위해서 우선 s=2,n=2인 가장 간단한 경우를 보자.가능한 배열의 수는 22=4가지이다.

                            00     01    10    11
                            □□ □■ ■□ ■■

여기에 대한 가능한 규칙들의 수는 16가지인데 각 규칙에 다음과 같이 0과 1의 숫자를 부여한다.

사용자 삽입 이미지

 이런 방식으로 16개의 규칙을 부호화하자.

                  0000,0001,0010,0011,0100,0101,0110,0111
                  1000,1001,1010,1011,1100,1101,1110,1111

 여기서 0000은 □□ □■ ■□ ■■ 의 넷 배열의 어느 경우에도 다음 세대에 on인 중앙세포가 없다는 규칙이고, 0001은 넷 배열 가운데 ■■ 의 경우에만 다음 세대에 on 중앙세포가 된다는 규칙이다.또 1111은 배열에 관계없이 다음세대에 중앙세포는 on이다(배열이 둘이므로 중앙세포는 없지만 우측세포를 중앙세포로 보자)

16가지 규칙 가운데 0001과 0010은 전자는 ■■ 의 경우만 on이고 후자는 ■□ 의 경우만 on으로 서로 다르다.그러나 전체의 차원에서 본다면 둘다 넷 배열 가운데 한 배열의 경우만 다음 세대에서 on이 된다는 측면에서는 같다.이런 식으로 보면 16가지 규칙들을 다음 5가지 群으로 분류할 수 있을 것이다.

R1 0000
R2 0001,0010,0100,1000
R3 0011,0101,0110,1001,1010,1100
R4 0111,1011,1101,1110
R5 1111


이 규칙들 가운데 세대가 진행됨에 따라 패턴의 변화가 가장 크게 일어나는 것은 어느 것일까? 얼핏 R5일 것 같다.그러나 (on을 ■으로,off를 □으로 나타내 보면) 화면 전체가 까맣게 얼어붙어 버리고 더이상 아무런 변화도 일어나지 않는다.형태는 다르지만 R1의 경우도 마찬가지이다. 이번에는 거꾸로 화면전체가 하얗게 되고 더 이상 아무런 변화도 일어나지 않는다.변화량의 관점에서 본다면 R1과 R5는 똑같은 양상으로 거울상을 이루고 있다.가장 큰 변화는 R3의 경우일 것이다.그 중간에 R2와  R4가 있으며 이 둘도 변화량의 관점에서 보면 똑같은 양상의 거울상을 이루고 있다.

 그런데 어떤 특정 배열이 다음 세대에서 on이 되는가 off가 되는가에 관계없이 그것의 전체차원에서의 변화량만을 보고자 한다면 R1는 R5와 R2는 R4와 완전히 거울상을 이루고 있기 때문에 사실상 최대변화가 일어나는 곳은 λ가 2/4인 경우이다.최대변화는 최소의 부동상태에서 오는데 R3의 부동상태 2는 가능한 배열의 수 22(이것은 최대의 부동상태와 같다)를 2로 나눈 것이다.일반적으로 말해서 최대변화에 따른 최소 부동상태는 가능한 배열의 수 kn을 K로 나눈 것이다(Kn/K)
여기서 랭턴은 최대값 λ는 1-(1/K)가 된다는 것을 밝혔다.그래서 일체의 변화는 모든것이 얼어붙는 λ=0에서 모든 것이 변하는 λ=1-(1/K)사이에 있다.

 그러므로 K=2인 세포자동자의 λ값은 0과 0.5사이에 있어 0일 경우는 얼어붙은 질서를 보여주고 0.5일 경우는 모든 것이 고정되어 있지 않는 극단적 혼돈상태를 보여줄 것이다. K=3인 경우는 λ는 0과 0.666사이에 있다.K=4인 경우는 λ는 0과 0.75사이에 있는데 이것이 랭턴이 다룬 것이다.

 랭턴은 λ로 무장하고 터무니없이 광대한 세포자동자의 규칙공간의 탐색에 들어갔다.그가 찾아낸 세포자동자의 비밀은 무엇인가? 놀랍게도 그것은 '생명의 논리'였다!
 
 랭턴의 세포자동자는 n=5,s=4이므로 앞서 소개한 Calife프로그램에서 2b를 입력시키면 된다.랭턴은 λ값을 0에서 0.75까지 변화시켜 가면서 규칙의 변화에 따르는 세포자동자의 거동을 검토했다.λ=0은 물론 그대로 소멸해 버린다.λ=0.05에서 고정점(fixed Point)이 나타나는데 λ값이 올라감에 따라 고정점에 도달하는 시간-표류기(transient)-이 점점 길어진다.λ=0.25에서 '주기구조'(peroodic structure)가 나타난다.계속 λ값을 올리면 표류기와 주기가 눈에 띄게 길어지면서 λ=0.4에 이르면 60세대의 표류기에 40세대의 장주기 구조가 나타난다.의미심장한 변화는 λ=0.45에서 0.5사이에서 일어난다.표류기가 점점 증대되면서 어떤 형태가 주기적 거동에 정착할지 아니면 계속 표류할지 종잡을 수 없게 된다.주기거동으로 확인된 것도 다시 출발점으로 되돌아올지도 확실하지 않다.경우에 따라서는 3회 순환 후에 되돌아오는 것도 있고,아애 되돌아 오지 않는 것도 있다.그러나 후자의 경우 그렇다고 출발점으로 결코 되돌아 오지 않을 것이라고 확신할 수도 없다.그러나 완전한 혼돈상태는 아니다.그것은 주기적 질서와 혼돈사이의 미묘한 균형점상에 있다.


사용자 삽입 이미지

<그림12>  λ=0.45에서 나타나는 복잡한 패턴의 한 예


이 단계를 넘어 λ=0.55에 이르면 주기적 거동은 붕괴된다.λ값과 함께 길어지던 표류기도 이 단계에 오면 역전되어 다시 짧아지기 시작한다.λ값의 증대에 따라 혼돈적 거동은 더욱더 커지고 표류기는 계속 줄어든다.λ=0.75에 이르면 표류기 없이 바로 혼돈상태로 돌입한다.  
요약하면 규칙공간을 관통하면서 세포자동자는 다음 단계를 통과해 간다.

 고정점 → 주기 → "복잡성" → 혼돈

이것은 울프람의 분류법과 대응한다.

Ⅰ → Ⅱ → Ⅳ →  Ⅲ

랭턴은 이 둘을 통합하여 다음과 같이 도식화하고 있다.

 

사용자 삽입 이미지


 <그림13>세포자동자의 규칙공간에서의 복잡성과 λ간의 관계를 보여주는 도식적 그림.이것은 또한 울프람의 분류와 위상전이 구조간의 관게도 보여주고 있다.


 이 그림에서 보듯이 어떤 것은 단순하고 어떤 것은 복잡하다.전 범위에 걸쳐 λ값을 변화시켜 가면 전이영역의 좌우 양단이 복잡성의 계층구조를 이루며 전체적으로는 거울상을 이루고 있음을 볼 수 있다. 밑으로 부터 전이영역에 접근해 감에 따라 고정점에서,주기적 거동으로,그리고 더 긴 주기적 형태로 진행해 간다. 이 주기는 전이영역에 도달할 때 까지 배열의 크기에 더욱더 민감성을 보여주는 아주 긴 표류기를 동반하면서 점점 더 길어진다. 이 전이영역은 아주 긴 '표류기'-이것의 길이는 배열의 크기에 지수적으로 의존한다-가 동반하는 아주 복잡한 거동을 보여준다. 게다가 아주 큰 배열의 작은 부분에서 시작한 유한한 초기배열은 주기적 거동을 낳는 표류기를 보여줄 수도 있고,그렇지 않을 수도 있다. 느린 성장과 복잡한 동력학의 주기적 동력학으로의 간헐적인 국지적 붕괴는 특정한 초기배열에 적용된 어떤 규칙의 최종결과이기는 하나 예측불가능하다.
 
 전이영역을 지나서 혼돈영역으로 진행해 감에 따라 또 다른 복잡성의 영역을 가로질러 가게 되는데 앞서와 다른 점은 그 경로가 역이라는 점이다. 전이영역을 약간 지났더라도 주기적 거동의 최종붕괴는 유한한 배열에서는 아주 드물며 무한배열에서는 거의 일어나지 않는다. 전형적인 혼돈적 거동으로 가는 표류시간과 그것의 배열의존성은 전이영역으로 부터 멀어짐에 따라 급격히 감소한다. λ의 최대값에 접근함에 따라 세포자동자는 최소의 표류시간후에 완전히 무작위상태로 가버리며 이제 표류시간은 더 이상 배열의 크기에 의존하지 않게 된다.

 λ값을 변화시킴으로 단순한 것에서 복잡한 동력학으로 복잡성의 계층을 올라갈 수 있으며 또 복잡한 것에서 단순한 것으로 복잡성의 계층을 내려올 수도 있다. 어느 쪽이든 양단에서는 거동은 단순하고 예측가능하다. 그러나 그 중간에서 거동은 아주 복잡하고 예측불가능하다. 세포자동자의 동력학적 거동의 전체 스펙트럼은 규칙공간내에서 임계전이점에서의 거리에 따라 배열할 수 있다.


10. 세포자동자와 혼돈의 가장자리


지금까지의 논의를 종합하여 세포자동자의 규칙공간의 지형도를 대략 그려볼 수 있다.

 

사용자 삽입 이미지

 <그림14> (a)전형적인 세포자동자의 규칙공간의 도식적 그림. 랭턴의 매개변수λ가 각규칙들과 연관되어 있다. λ가 증가함에 따라 세포자동자의 긴 주기의 행태는 '고정점'에서 '혼돈'으로 바뀐다. '복잡성'의 행태는 주기영역과 혼돈영역 사이의 경계에 자리잡은 섬 처럼 보인다. 이것을 (b)태극도(太極圖)와 비교해 보라.

  이 지도에서 보듯이 주기적 질서에서 혼돈으로 가는데는 두가지 경로가 있음을 알 수 있다.하나는 주기적 거동에서 혼돈적 거동으로 곧장 이행해 가는 것으로 이것이 '1차상전이'(first-order phase transition)이다.다른 하나는 주기적 질서에서 혼돈으로 가지않고 그 둘사이의 경계점을 통과해 가는 경우이다.이것이 '2차 상전이'(second-order phase transition)인데 랭턴은 여기가 바로 '생명의 자리'라고 보았다.

 물리학에서의 상전이 현상과 연관지어 보면 그 의미를 잘 알 수있다. 우리가 주로 잘알고 있는 것은 일차 상전이 현상이다.예를들어 얼음의 온도를 상온으로 올리면 얼음은 한꺼번에 물로 변한다.이 때 일어나는 현상을 분자차원에서 보면 분자들이 질서와 혼돈 중 어느 하나를 선택하도록 강요되고 있는 것이다.전이온도 보다 낮은 온도에서는 분자들이 결정구조의 질서(얼음)를 선택할 수 있을 만큼의 느린속도로 진동하고 있다.반대로 전이온도 보다 높은 온도에서는 분자들이 너무 심하게 진동하기 때문에 분자결합이 끊어지는 속도가 재결합하는 속도 보다 빨라져서 혼돈(물)을 선택하지 않을 수 없다.

 전이온도 보다 높은 온도에서는 대부분의 분자들이 완전히 혼돈스러운 상태로 서로서로를 넘어 뒹굴어 다닌다.그러나 뒹굴어 다니는 것들 중에는 무수히 많은 아주 작은 섬들이 있는데,이 섬들은 질서있는 격자상태의 고체이며 그 가장자리에서 분자들은 끊임없이 용해되었다가 재결정화 된다.이 섬들은 분자크기의 레벨에서 보아도 그렇게 크지 않으며 오래 지속되지 않는다.그러므로 그 시스템은 아직 거의 혼돈상태이다.

 그러나 온도를 낮추어가면 섬들이 점점 커지기 시작하고 그에 상응해서 지속기간이 점점 길어진다.혼돈과 질서간의 균형이 변하기 시작한 것이다.온도를 전이온도 보다 더 내리면 이제 상황은 역전된다.유체의 바다속에 점점이 박힌 고체의 섬에서 고체의 대륙위에 점점이 산재해 있는 호수들로 변한다.
  둘 사이의 전이점이 2차상전이가 일어나는 점이다.질서있는 구조들이 혼돈스러운 유체의 양과 똑같은 양만큼 물질을 채우게 된다.질서와 혼돈이 혼재되어 있으며 비유적으로 말하자면 각 분자들이 조직의 일원으로 남을 것인지,외롭지만 자유로운 개인으로 남을 것인지를 결정하지 못하고 갈등상태에 빠져 있는 것과 흡사하다.이 갈등은 상호타협-전체속의 부분,부분속의 전체-를 낳게 되는데 이것이 바로 복잡성의 영역이다.

 물리학에서의 상전이 현상에 대한 기술이 세포자동자에 대한 기술과 너무나 흡사해서 흥미롭다.세포자동자의 λ는 물리학에서의 온도와 같은 역할을 하는 것인지 모른다.그러나 더 흥미로운 것은 랭턴의 논의가 생명이 왜 물과 연관되어 있는지에 대한 중요한 시사를 던져주고 있다는 것이다.

 물질은 고체,액체,기체라는 3가지 위상을 가진다.그러나 액체에서 기체로 또 그역으로의 전이는 위상전이 없이 가능하기 때문에 액체와 기체는 더 일반적인 단계인 '유체'(fluid)라고 볼 수 있다.고체와 유체는 위상전이의 산물이기 때문에 현상태의 현격한 차이에도 불구하고 이 둘은 동일한 실체의 다른 相에 지나지 않는다.그러므로 고체와 유체의 차이는 그 구성물질에 있는 것이 아니라 그것의 동력학적 거동방식의 차이에 있는 것이다. 앞서의 지형도를 따르면 고체는 고정점과 주기의 영역에 있는 것이고 유체는 혼돈의 영역에 있는 것이다.그리고 물(액체)은 유체로서의 기본위상을 가지면서도 고체와 유체의 경계선상에 위치하고 있다.
이 경계는 질서 속에 얼어붙지 않으면서도 혼돈속에 빨려들어 가지도 않는 그 미묘한 경계영역이다.이곳이 바로 생명의 자리인데 랭턴은 이곳을 '혼돈의 가장자리'(edge of chaos)라고 불렀다.



11. 세포자동자와 생명의 의미


이것은 어떻게 생각하면 컴퓨터 게임에 지나지 않는 콘웨이의 라이프게임이 왜 생명적 거동을 보여주는지를 설명해 준다.물질의 상을 기본적으로 동력학적 거동이라고 본다면 중요한 것은 그 거동이지 그것을 이루고 있는 소재가 아니다.거동을 만들어내는 것이 무엇이든 -그것이 컴퓨터의 소프트웨어든 생물의 웨트웨어든- 그 거동이 동일한 위상-복잡성-속에 있을 때 동일한 양상-생명현상-을 보일 것이다.

"고체,액체,그리고 기체의 동력학적 계의 거동의 보편적 집합으로의 일반화는 컴퓨터의 '하드웨어'에 의해서 구현되는 각종 거동들을 이해하는데 중요한 귀결들을 보여준다. 컴퓨터의 하드웨어는 생물의 '웨트웨어'(wetware)와는 근본적으로 다른 '소재'이며 이 근본적 차이 때문에 컴퓨터의 하드웨어는 생명,지성과 같은 웨트웨어가 보여주는 한층더 복잡한 거동을 성취할 수 없다고 일반적으로 생각되고 있다.그러나 고체형,액체형,기체형이 물질 그 자체의 성질이라기 보다 물질의 조직화의 차이라는 것을 정확히 이해한다면 하드웨어를 웨트웨어로 바꾸는 것은 단지 조직화의 문제이며 결과적으로 웨트웨어가 성취한 모든 것을 하드웨어도 성취할 수 있다고 보아야 할 것이다.

 부가해서 이러한 통찰은 위상전이의 근방에서 작동하는 물질계는 컴퓨터 처럼 거동할 수 있다는 것을 함축한다.이것은 웨트웨어에 의해서 성취될 수 있는 각종 거동들을 이해할 수 있는 중요한 귀결들을 갖고 있다.'물'은 동력학적 용어로 말하면 질서와 혼돈 사이를 가로지르는 혼돈의 가장자리이고,콘웨이의 라이프게임(23/3의 규칙)은 웨트웨어의 용어로 말하면 s=2,n=9가 만드는 광대한 규칙공간(대부분은 고착된 질서나 혼돈의 땅)속에 드물게 분포해 있는 '물'의 영역이다. 정보동력학에서의 '복잡성'은 생물학에서의 '생명'의 다른 이름이다.
 
 우리는 정보동력학이 임계위상전이 근방의 물리계에서 자발적으로 출현할 수 있다는 것을 이제 알게 되었다.이 논문의 결과는 국지적 또는 전역적 조건이 임계위상전이의 영역에 어떤 매질-그것은 물일지도 모르고 또 다른 것일지도 모른다-을 가져왔을 때 생명을 발생시킨 정보동력학이 나타났다는 것을 시사하고 있다.우리가 세포자동자에서 임계위상전이의 부근에서의 동력학이 준안정적 구조의 복잡동력학을 조성시킨다는 것을 보았는데 이 준안정적 구조의 복잡동력학은 바로 생명을 특징지우는 바로 그것과 같은 종류의 것이다.  자연은 임계위상전이의 부근에 오랫동안 이 매질을 유지시켜줄 만큼 자비롭지는 않다.이것은 초기의 정보동력학이 전역적 조건이 위상전이영역을 떠났음에도 불구하고 국지적으로 위상전이의 근방에 머물 수 있도록 몇가지 매개변수들을 통제하고 있었음에 틀림없다는 추론을 가능하게 한다.물론 그러한 계를 중요한 전이점으로 부터 멀리 밀어내는 많은 매개변수들이 있었음에 틀림없고 그 종류도 아주 다양해서 이것들이 초기의 정보처리계의 대부분을 파괴시켰을 것이다.진화란 중요한 위상전이에 대한 계의 관계에 영향을 주는 "매개변수"들에 대한 통제범위를 확장시켜가는 과정이라고 볼 수 있다.

 살아있는 계란 동력학적으로 말한다면 '끌개'를 피할 수 있는 계라고 말할 수 있다.주기영역은 한계순환이나 고정점 끌개에 의해서 규정되는데 대해 혼돈의 영역은 전형적으로 아주 많은 차원으로 된 이상한 끌개에 의해서 규정된다.살아있는 계는 이 양 극단을 피해야 하고 그래서 지나친 질서와 지나친 무질서 사이의 교묘한 운행을 배우는 것이 필요하다.


 이것은 연장된 표류기,다른말로 '임계' 전이 근방에 자신을 머물게 하는 것을 배움으로써 가능하다. 일단 그러한 계가 임계전이 근방에서 출현하면 진화는 임계점 근방의 동력학의 본질인 정보처리능력을 획득하게 되고,열려있는 표류기에 자신을 유지할 수 있는 능력을 더욱 확장하기위해 그 능력을 이용해 왔던 것으로 보인다."(C.Langton,"Artificial Life"in the philosophy of Artificial Life,p.39)
 
 생명의 본질은 그 동력학적 거동에 있지 그 소재에 있는 것이 아니라는 랭턴의 주장이 타당하다면 우리는 생명연구에 있어서 지금까지의 어쩔 수 없었던 한계-지구상의 생명이라는 특수한 사례를 통한 생명의 보편적 속성에 대한 탐구라는 불가능한 과업-를 극복할 수 있는 새로운 돌파구를 찾은 셈이다.컴퓨터내에 복잡성을 구현해 봄으로써 생명의 본질에 대해 우리는 많은 것을 배울 수 있을 것이다.세포자동자가 바로 그 한 예이다.