카우프만, 싸우자!
요새 스튜어트 카우프만의 <혼돈의 가장자리>를 읽고 있다. 뭐, 기본적으로는 생물학의 창발성 이론을 다루고 있는 책인데 이것저것 재미있는 이야기들이 많이 나와 읽는 재미가 쏠쏠하다. 그 중 어제 내 눈길을 끌었던 한 가지! 99쪽부터 104쪽에 걸쳐 '화학적 창조 신화'라는 제목 아래 상전이(phase transition)에 관한 신기한 모델이 등장한다. 아래 일부를 인용한다.

과학자들은 종종 단순한 장난감 모형을 통해 생각함으로써 복잡한 문제에 대한 직관을 얻는다. 내가 여러분에게 말하고 싶은 장난감 문제는 <무작위적인 그래프>와 관련된다. 무작위적인 그래프는 점들과, 이들을 임의로 연결하는 선들의 집합이다. (중략) 무작위로 두 개의 단추를 선택하고 그것들을 실로 연결한다. 이제 이 쌍을 내려놓고 단추를 두 개 더 무작위로 선택해서 실로 연결한다. 이러기를 계속함에 따라 당신은 처음에는 전에 집은 적이 없는 단추들을 집을 것이 거의 확실하겠지만, 한참 후에는 무작위로 선택된 쌍들 중의 하나가 이미 집혀진 적이 있다는 것을 발견하게 될 가능성이 높아질 것이다. 그래서 당신이 새로 선택된 두 개의 단추들을 실로 연결하면, 세 개의 단추가 연결되는 것을 발견하게 될 것이다. 간단히 말해서, 당신이 단추들의 쌍을 무작위로 선택해서 실로 연결하는 것을 계속함에 따라, 한참 후에는 단추들이 더 큰 덩어리들로 서로 연결되기 시작한다. (99-101쪽)

요약해보자. N개의 단추가 있고 M개의 실이 있다. 여기서 랜덤으로 두 개의 단추를 집어 실을 꿰고, 얘네를 내려놓은 후 다시 랜덤으로 두 개의 단추를 집어 실을 꿴다. M이 충분히 크다면 나중에는 이미 다른 단추에 연결된 단추를 집는 경우도 생길 것이다. 그럼 세 개의 단추가 연결되는 셈이다. 여기까지는 이해하기 쉽다. 흥미로운 건 그 다음부터다.

무작위적인 그래프의 중요한 특색들은 실 대 단추의 비율을 조절함에 따라 매우 규칙적인 통계적 거동을 보여준다. 특히 실 대 단추의 비율이 0.5를 넘어설 때 상전이가 일어난다. 그 점에서는 <거대한 덩어리>가 갑자기 형성된다. (중략) 실 대 단추의 비율이 0.5를 지남에 따라 가장 크게 연결된 단추 덩어리의 크기가 갑작스럽게 변하는 현상은 내가 생명의 기원을 이끌었다고 믿는 상전이의 장난감 판이라고 할 수 있다. (101-102쪽)

무슨 소리냐? N을 고정시켜놓고 M을 변화시켜보자. 그러면서 가장 크게 연결된 단추 덩어리의 크기 S를 적어둔다. 예컨대 M = 1이라면 S는 무조건 2겠지. 두 개 연결된 게 가장 크니까. 반대로 M = N(N-1)이라면 모든 단추가 다 연결되므로 S는 N과 같아진다. 재미있는 것은 M/N = 0.5, 즉 M = N/2일 때부터 갑자기 S값이 확 뛴다는 것이다. 책에서는 다음과 같은 그림을 보여준다. N = 400이고 M을 0에서 600까지 변화시킬 때 S값을 그린 그래프이다. (스캔했는데... 저작권법 위반이려나 =ㅁ=)


저자의 주장처럼 M/N = 0.5일 때 갑자기 S값이 확 뛰는 것을 볼 수 있다. 이 그래프를 보는 순간, 지하철에서 기절할 뻔 했다. 나의 오래된 궁금증을 단번에 해결해줬기 때문이다. 난 온도에 따라 상이 연속적으로 변하지 않는 이유를 늘 궁금하게 여겼다. 물을 예로 들어보자. -273도에서 완전한 결정이다가 서서히 결정이 흐트러지면서 0도를 넘으면 액체 비스무리한 녀석이 되고, 그 녀석이 점점 묽어지면서(마치 초임계유체처럼!) 100도를 넘으면 기체 비스무리한 녀석이 되면 왜 안 될까? 어차피 상이라는 건 분자간 결합에 의해 나타나는 것이고, 그 분자들의 운동에너지가 볼츠만 분포를 그린다면 일부는 강하게 결합하고 일부는 약하게 결합할텐데 왜 그게 똑같은 '상(phase)'으로 나타나느냐 이거다. 그런데 이 책에서 이렇게 명쾌한 답을 주었다. 상은 많은 수의 입자가 존재하면 필연적으로 나타나는 것이라고.

잔뜩 흥분해서 지하철 역을 나오는데 갑자기 찬바람이 쌩하고 불었다. 몸이 추워지니 흥분이 가라앉기 시작한다. '잠깐, 그런데 저거 정말로 저럴까?' 설마 카우프만이 구라를 쳤겠어 싶었지만 한 번 눈으로 확인해보고 싶었다. 절대 내가 nerd라서 그런 게 아니다. 그래서 결국 오늘 회사에 나와 시간을 짬짬이 내서 저걸 시뮬레이션하는 프로그램을 짰다. (참고로 VB로 짰습니다 -_-v) 좀 발로 짜서 버그가 많았지만 =_= 어찌어찌 완성했다. 그리고 방금 N = 100으로 놓고 계산을 돌려보았다. 다섯 번 돌리고 평균을 냈다.

...그런데 이거 뭥미?


가로축은 M값이고 세로축은 S값이다. 보시다시피, 카우프만의 그래프와 하.나.도.안.똑.같.다. 카우프만은 자신의 그래프를 시그모이달(sigmoidal) 형태라고 했는데, 이건 시그모이달은 무슨 얼어죽을... 선형이잖아! 상전이가 어딨어!

카우프만, 아무래도 나랑 싸워야겠다.

@ 어디가 잘못된 걸까요 T_T 누가 이것 좀 프로그래밍해서 검증해주세요;;;
by 로보스 | 2008/03/13 19:56 | |과학| | 트랙백(1) | 핑백(1) | 덧글(7)
트랙백 주소 : http://lovos.egloos.com/tb/1794551
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Tracked from 신이 저주할지라도, 웃.. at 2008/03/18 01:23

제목 : 바보들은 두려워한다
카우프만, 싸우자! - by 로보스 바보들은 교과서의 주장에 도전을 하지 않는다. 교과서에는 대개 수십년간 수백명의 학자들이 모두 검토해보고, 반대 의견이 없는 주장이 들어가 있다. 특히 과학 계열의 교과서에는. 일개 창기사가 풍차와 싸워 이길 수 없듯, 일개 과학도가 교과서의 주장과 싸워 이길 수는 없다. 우리가 돈키호테를 비웃듯, 미리 체념한 사람들은 교과서를 의심하는 친구를 비웃는다. 교과서랑 싸워서 지면 어떤가. 이......more

Linked at 世界はネオハピ! : 스튜어트 .. at 2008/03/19 12:56

... 볼 것을 권하고 있다. 이렇게 나같은 캐양민도 할 수 있는 쉬운 시뮬레이션들로부터 저런 어마어마한 주장을 끌어낸 걸 보면 카우프만은 정말 킹왕짱인 것 같다. (비록 나는 하나 해보고 캐발렸지만;) 덕분에 한 장 한 장 넘기면서 극도의 지적 흥분을 느꼈고 -- 아, 이 느낌을 어떻게 글로 풀어 쓰리 -- 오랜만에 '과학이 주는 감동'을 ... more

Commented by yy at 2008/03/13 22:21
N = 100이면 사이즈가 너무 작긴 하지만, 좀 그래프가 이상하긴 하군요. 프로그램을 다시 확인해보시는게 좋을 것 같습니다. N을 증가해가면서도 그려보세요.

시스템마다 상전이의 양상은 다릅니다. 임계점에서부터 연속적으로 order parameter가 증가하는 경우도 있고 (2nd order), order parameter가 불연속적인 값을 갑자기 가지게 되는 경우도 있습니다 (1st order). 여기에 대해서는 통계물리학 교과서등 참고하시면 좋을 것 같습니다.

말씀하신 문제는 percolation이라고 오랫동안 연구된 주제입니다. generating function을 사용한 approach를 혹시 알고 계신다면 http://prola.aps.org/abstract/PRE/v64/i2/e026118 이 논문을 살펴보시면 일반적인 네트워크에서 어떻게 largest component size문제를 이론적으로 접근하는지 감을 잡으실 수 있으실 겁니다.
Commented by 로보스 at 2008/03/13 23:22
yy님// 와 정말 고맙습니다 T_T 확실히 제 프로그램에 문제가 있는 것 같네요. 역시 저 따위가 카우프만과 싸우려 드는 건 무모한 짓이었군요 (...)

상전이에 대한 친절한 설명, 고맙습니다 (_ _) 일단 집에 있는 물리 교과서부터 뒤져봐야겠네요. 논문도 한 번 읽어보도록 하겠습니다 ^^
Commented by Asuka_불의넋 at 2008/03/14 18:34
...저런 걸 테스트해 볼 수 있으시다니 부럽습니다.
프로그래밍을 재수강까지 합쳐서 2년 배웠는데도 웬만한 이론 모델링하라면 못 하고 헤매는걸요;
Commented by 로보스 at 2008/03/14 23:16
Asuka님// 그, 그게...;; '프로그래밍'을 배우는 것과 '모델링'을 배우는 건 다르니까요 ^^; 전 프로그래밍 과목은 얼마 안 들었지만 응용수학이나 수치해석, 분자분광학 등에서 프로그래밍 스킬을 이용해서 모델링하는 걸 많이 들어서... 아마 Asuka님도 모델링 수업을 좀 들으면 하실 수 있을 거예요- 별로 대단한 건 아니랍니다;
Commented by 로보스 at 2008/03/14 23:17
지인들을 통해 프로그래밍을 시켜(...) 보았는데 대충 문제점을 찾은 것 같습니다. 기본 가정 중의 일부가 틀린 것 같군요 -ㅅ- 지금은 소스가 없어서 확인을 못해봤지만, 가정을 바꿔서 다시 테스트해볼 예정입니다.
Commented by 긁적 at 2008/03/15 04:08
위대한 사람에게 도전장을 낸 다음, 쳐발리는건 아름다운 일이라고 생각합니다.

그.. 그나저나... O-Game 에서 함선의 숫자가 일정 수준 이하일 때는 공격 손실이 지나치게 크다가, 일정수준에 도달한 직후 갑자기 손실이 줄어드는 이유도 이제 알겠군요. (...........)
Commented by 로보스 at 2008/03/17 08:56
긁적님// 깨갱 T_T

:         :

:

비공개 덧글

◀ 이전 페이지 다음 페이지 ▶



즐겁게 살아야죠. :)
by 로보스
Calendar
메모장
카테고리
|소개|
|일기|
|감상|
|과학|
|잡념|
* 홈페이지 ('02-'03)
* 네이버 블로그 ('05-'06)
최근 등록된 덧글
YH 선배님// 흐흐 노렸..
by 로보스 at 10:28
련!// 크크 감사-
by 로보스 at 10:28
오오.. 멋져요. 뒤가 dix..
by 와이에이치 at 11/30
오.. 있어보임+ㅁ+ ..
by 련! at 11/30
비밀글// 오오 +_+ 많이..
by 로보스 at 11/30
미리내님// 아흐 기대하..
by 로보스 at 11/30
미리내님// 아 그렇군요 ;ㅅ..
by 로보스 at 11/30
ㄷㄷㄷㄷㄷ 무서워요 ;ㅅ; ..
by 미리내 at 11/30
아직 한RSS에는 예전 걸..
by 미리내 at 11/30
유키누나// ㅇㅇ 누나는 짱임
by 로보스 at 11/30
난 블로그 명은 불어에 ..
by Yuki37 at 11/30
꼬깔님// "로보스 가라사..
by 로보스 at 11/30
비밀글님// 그냥 보이는대..
by 로보스 at 11/30
줄리아님// 감사감사 :D
by 로보스 at 11/30
유크님// 잇힝 감사해요 :$
by 로보스 at 11/30
멋진데요? :) 로보스 가..
by 꼬깔 at 11/30
오오 멋있어요*-_-*
by julia at 11/30
오오 뭔가 산뜻해요!
by yu_k at 11/30
versilov님// 후후 감사..
by 로보스 at 11/30
ㅋㅋ 현학쟁이
by versilov at 11/30
최근 등록된 트랙백
2007 - Gerhard Ertl
by 한글
Scheme으로 루저 인증..
by 오늘보다 나은 내일을 위해.
루져 테스트 [asp.net]
by 緣
루저코드 - 파스칼 버전
by Divine Power
루저코드 - C#
by 평범과 순수한 はるかぜ..
이글루 파인더
rss

skin by zodiac47