카테고리 보관물: 학술

엔트로피의 이해 2

로또가 생각이 났다.

엔트로피는 다음과 같이 정의된다

-엔트로피 = $\sum$확률(x) log(확률(x))

-기호도 붙어있고 볼츠만 상수도 원래는 있지만 상수 정도는 대충 넘어가자.

여기서, 로그가 빠지면 그냥 확률의 덧셈이므로 1이 된다. 로그가 왜 붙어있는가는 좀 나중에 생각을 해 보고, 엔트로피가 위와 같이 정의된다 치고 로또 복권의 엔트로피를 생각해 보자.



근데, 어려우니까 로또 대신, 일단 동전 던지기의 엔트로피를 생각해 보자.

확률(앞) = 0.5

확률(뒤) = 0.5

-엔트로피 = 0.5(log(0.5))+0.5(log(0.5)) = log(0.5)

따라서 엔트로피 = log2

참 쉽죠?

만약 log의 밑이 2라면 엔트로피 = 1

(볼츠만 상수의 역할이 바로 이것이다. 통계적 현상과 실제 자연 현상 사이의 어떤 관계가 성립할 때, 그 관계를 수치적으로 잘 맞도록 해 주는 역할, 즉 로그의 밑 같은 ?沽?해당한다.)

이번엔 주사위 던지기의 엔트로피를 생각해 보자.

확률(n) = 1/6 for any integer n between 1 and 6.

-엔트로피 = 1/6(log(1/6)) + 1/6(log(1/6)) + 1/6(log(1/6)) + 1/6(log(1/6)) + 1/6(log(1/6)) + 1/6(log(1/6)) = log(1/6)

따라서 엔트로피 = log 6

이것도 만약 log의 밑이 6이라면 엔트로피 = 1

모두 다 같은 확률을 가지는 경우에는, 이처럼 엔트로피가 단순하게 계산된다.

이제, 실전에 들어가 보자. 로또 당첨의 각 등수별 확률은 다음과 같다.

확률(1등) = 1/8145060

확률(2등) = 1/1357510

확률(3등) = 1/35724

확률(4등) = 1/733

확률(5등) = 1/45

내가 직접 계산한 값은 아니라서 이게 진짜 그렇게 되는지는 모르겠지만, 검증하기는 귀찮으므로 일단 믿고 넘어가자. 일단 이 값을 다 더하면 0.0236153305 이다. 대략 2.4%만 당첨된다는 뜻이다. -_-; (5등조차도.)

물론, 당연히 다음과 같다.

확률(꽝) = 1 – 확률(당첨)

– 엔트로피 = 1/8145060 log(1/8145060) + 1/1357510 log(1/1357510) + 1/35724 log(1/35724) + 1/733 log(1/733) + 1/45 log(1/45) + (1-확률(당첨)) log(1-확률(당첨)) = -0.117232782169297292634886427813927570789488305228976152956

이 계산은 구글에서 검색할 수 없어서 정답 검색으로 유명한 울프램 알파를 써 봤다.

엔트로피 = 0.118

이게 무슨 의미인가...
위에서 동전 던지기의 엔트로피를 실제로 계산하면 log(2) = 0.69정도 되고,
주사위 던지기의 엔트로피를 계산하면 log(6) = 1.79정도 된다.
로또 복권의 엔트로피는 이런 것들보다 훨씬 낮은 편이다.

이제 이걸 실제 확률 과정에서 한번 살펴보자.
만약 동전을 1000번 던져서 300번이 앞, 700번이 뒤가 나왔다고 하자. 이 경우의 엔트로피는
- 엔트로피 = 0.3 log(0.3) + 0.7 log(0.7) = -0.610864
엔트로피 = 0.61이다. 즉, 동전던지기에서 각각 500번씩 나오는 경우보다 엔트로피가 작다.
실제 로또 복권의 당첨 확률을 이용하여 엔트로피를 계산하면,
아마 위에서 계산한 로또 복권의 이상적인 경우에 대한 ž‚ㄴ트로피보다 더 작게 나올 것이다.
실제로 계산해 보고 싶긴 한데 총 몇개가 팔렸는지에 대한 자료를 알기가 어렵다. 회차별 자료는 있는데,
이걸 다 더하려니 막막하다. -_-;


쌍대

수학은 어쩌면 대칭성에 관한 학문일 수도 있는데, 수학을 공부하다보면 여러가지 흥미로운 대상을 찾을 수 있다. 그중 이해하기 가장 쉬운 대상은 점과 직선이다. 점과 직선에 대해서 다루는 수학의 분야가 바로 기하학이다. 기하학에서는 아무튼 점과 직선이 어떻게 만나고 헤어지는지 얘기해준다. 그래봐야 “점이 있다” “점 두개사이에 직선을 그을 수 있다” 등등의 이야기로 시작하겠지만. 어쨌든, 이런 점과 직선의 공간은 보통 숫자를 이용해서 표시한다. 하지만 숫자로 표현할 수 있는 점에는 한계가 있는데, 무한대가 숫자가 아니라는 것이다. 그래서, 그런 점과 그런 직선을 다루는 기하학이 있다.

보통의 기하학적 공간 + “여기서부터 무한히 먼 곳에 존재하는 점”과 “여기서부터 무한히 먼 곳에 존재하는 직선”이 있는 공간을 다루는 기하학이 바로 사영기하학(Projective Geometry)이다.

사영기하학 자체를 여기서 전부 설명하기엔 힘드니까 각자 교과서를 찾아보도록 하고, 몇가지 재밌는 것들만 이야기 해 보겠다. 일단 사영기하학의 “공간”에서는 유클리드 기하학에서 성립하는 모든 특징이 다 성립한다. 당연하겠다. 다 똑같고 무한히 먼 곳에 직선과 점을 추가했을 뿐이니까 당연히 성립할 것이다. 여기에 더 재밌는 것은 “쌍대성(Duality)”이 존재한다는 점이다.

쌍대성이란, A와 B라는 대상이 있을 때, 만약 A에 대해서 어떤 정리가 성립한다면 B에 대해서도 똑같이 성립한다는 것이다. 사영기하학의 쌍대성은 점과 직선 사이에 존재한다. “만약 어떤 정리(Theorem)가 점에 대해서 성립한다면, 그 정리는 직선에 대해서도 성립한다.”는 정리가 증명되어 있다. 이건 쌍대성 정리라고 하는데, 사영기하학에서 매우 중요한 정리이다. 왜냐하면, 점에 대해서 안 풀리는 문제가 있을 때 그걸 직선에 대한 문제로 바꿔서 풀어도 괜찮다는 뜻이기 때문이다. 이런 보장이 되지 않는다면, 맘대로 점과 직선을 바꾸면 안된다.

2차원 공간에서 원점 (0,0)을 지나가는 임의의 직선의 방정식을 써 보자.

Ax + By = 0

여기서, “직선”은 위의 공식으로 표현되는 대상 그 전체이다. (x, y)는 변수이며, 아무 값이 들어가더라도 저 공식만 만족시킨다면 아무 문제가 없다. 하지만 A와 B는 직선을 결정하는 수이다. A나 B가 변한다면 직선도 변한다. 특정한 A와 B에 대해서 언제나 직선이 1개 결정된다. 그 반대로도, 직선 1개를 생각하면 그 직선에 해당하는 A와 B의 쌍이 정확히 1개 존재한다. 따라서 우린 직선 대신에 A와 B를 그 직선이라고 생각해도 된다. 그런데 A와 B는 실제로는 그냥 수니까 합쳐서 (A, B)라고 써도 된다. 그리고 이렇게 써 놓고 보니 점이랑 똑같이 생겼다. 그래서 직선 Ax+By=0 대신에 점(A, B)라고 해놓고 여러가지 작업을 할 수도 있다. 그게 쌍대성이다. (여기서 쌍대성의 정리를 증명한 것은 아니다.)

여기서 쌍대성의 의미를 이해하고 넘어가자. Ax+By=0이라는 공식에서 찾을 수 있는 것은 이 공식을 만족하는 직선 (x,y)는 원점에서 점 (A, B)를 잇는 직선과 수직으로 만난다는 점이다. 만약, 반대로 (x, y)를 고정시켜놓고 (A, B)를 바꾸더라도 마찬가지 관계가 성립한다. 우린 점을 (x, y)로 정의하고 직선을 (A, B)로 정의했지만, 실제로는 점과 직선의 역할을 바꾸더라도 문제가 없음을 확인할 수 있다.

이제, 흔히 말하는 벡터 공간을 생각해 보자. 벡터 공간이란 그 안에 있는 원소들에 대한 덧셈과 길이 변환이 잘 정의된 공간이다. 점들의 공간을 벡터 공간으로 정할 수 있는데, 가령 (a, b) + (c, d) = (a+b, c+d)와 같이 덧셈을 정의하고 k(a,b) = (ka, kb)와 같이 길이 변환을 정의한다면 점들의 공간은 벡터 공간이 된다. (다르게 정의해도 조건만 만족한다면 상관 없다.)

벡터 공간에서도 벡터 공간의 쌍대 벡터 공간을 찾을 수 있다. 어떤 벡터 공간의 쌍대 벡터 공간이란 다시 벡터 공간인데, 원래의 벡터 공간과 같은 성질을 갖는 공간이다.

우선 선형 범함수(linear functional)라는 개념을 알아야 한다. 범함수(functional)란, 벡터 하나를 주면 그에 대해서 수 하나를 내놓는 함수이다. 가령 벡터 (a, b)에 대해서 f(a, b) = a+b 라고 주는 것 또한 범함수에 속한다.

그중에서 선형 범함수는 선형 관계가 성립하는 범함수이다. 즉, 범함수 f가 두 벡터 v, w에 대해서 f(v+w) = f(v)+f(w)이고 실수 k에 대해서 f(kv) = kf(v)가 성립하는, 그런 참 괜찮게 생긴 애들이다.

그런데 범함수들 역시 벡터 공간이 된다. 가령, 두개의 범함수 f, g가 있다고 하면 (f+g)(v) = f(v) + g(v)라고 쓸 수 있고, (kf)(v) = k(f(v))가 되므로 덧셈과 길이 변환이 잘 정의된다.

어떤 벡터 공간에 대해서, 그 벡터 공간에 주어진 선형 범함수들의 공간은 그 벡터 공간의 쌍대 벡터 공간이 된다. 일단 선형 범함수들의 공간이 벡터 공간이 된다는 사실은 쉽게 알았는데, “쌍대성”은 어떻게 생각해야 할까?

간단히, 쌍대 벡터 공간이라고 해 놓고서 그 쌍대 벡터 공간의 쌍대 벡터 공간이 원래의 벡터 공간이 된다는 것을 알아보자. 뭐, 간단하다. f라는 범함수 대해서 v라는 함수는 v(f) == f(v)로 정의하면 된다(!)

그럼 앞에서 했던 얘기들을 그대로 다 할 수 있다. (v+w)(f) = f(v+w) = f(v) + f(w) = v(f) + w(f)라든가.

이런 쌍대성의 경우에는, 앞에서 했던 점-직선 사이의 대칭성을 그대로 적용할 수 있다. 즉, 만약 v를 점으로 생각한다면 f는 직선이 된다. (그 반대도 마찬가지.)

물리학에서도 비슷한 얘기가 나오는데, 입자-파동 이중성의 원리에 등장하는 불확정성 원리이다. 불확정성 원리에서는 쌍대 관계에 있는 값은 동시에 둘 다 정확히 측정할 수 없다고 한다. 운동량과 위치는 쌍대 관계이기 때문에 둘 다 동시에 정확히 측정할 수 없다. 잘 생각해보면, “위치”는 점에 해당하고 “운동량”은 직선에 해당한다는 것을 알 수 있다. (물론, 그 반대로 생각해도 된다. 운동량이 점이고 위치가 직선이라도 별 문제는 없다. 왜냐면? 쌍대니까.)

———–

추가

Kwak and Hong 책을 보니까 쌍대 공간은 선형 변환의 Transpose의 일반화된 형태라고 설명하고 있다.

더 자세한 내용은 댓글로…

고추

다음의 두 소식을 순서대로 읽으면 흥미로운 것을 알 수 있다. (반대 순서로 읽으면 “반전 드라마”가 된다.)


http://news.kbs.co.kr/society/2010/09/06/2155583.html


http://www.fnnews.com/view_news/2010/09/06/1283698852.html

KBS도 그렇고 이기원 교수팀도 그렇고 뭔가 의도를 갖고 이런 소식들을 전한 것인지는 모르겠지만, 이런 경우 “모순”이라고 해야 할지 “진퇴양난”이라고 해야 할지.

암튼, 아래는 해명 기사.


http://www.munhwa.com/news/view.html?no=20100906010707270560041&w=nv

후회

태어난건 내가 선택한게 아니니까 후회할 수가 없다.

죽는것도 내가 어떻게 할 수 있는게 아니니까 후회할 수 없다. 게다가 죽은 후에는 후회할 수 없다.

후회하려면 그 사이에 잽싸게 해둬야 할 것 같다.

영화와 영화 이야기

집에 오는데 버스에서 여자 두명이 하는 얘기를 듣게 되었다.

“이승기가 그 창고에 들어갔다가 다쳐서, 영화 캐스팅이 안되는 거야. 근데 그걸 끝까지 하겠다고 하고, 감독은 바꾼다고 하고…”

전체 이야기를 다 못들어서 이야기를 이해할 수가 없었는데, 가장 혼란스러운 부분은 이 이야기가 영화에 관한 이야기인지, 영화에 관한 내용이 나오는 영화에 관한 이야기인지 모르겠다는 점이었다.

만약 “이승기”라는 어떤 인물이 실존인물이 아니었다면 영화에 관한 내용이 나오는 영화에 관한 이야기라는 것을 금방 알 수 있었겠지만, 이 경우에는 실존인물이기 때문에 내용을 이해할 수 없었다.

엔트로피의 이해 – 서론

에너지 보존법칙은 이제 잊자. (수식 없이는 어려워서 못쓰겠음. -_-; 누가 돈 주면 쓸지도…)

에너지 보존법칙은 열역학에서는 제 1법칙에 해당한다. 이번엔 그 유명한 제 2법칙에 도전해 보자. 아직도 틀렸다고 주장하는 사람이 있는 그 2법칙이다. 다른 이름으로, 엔트로피의 증가 법칙이라고도 부른다.

말은 쉽다. “엔트로피는 증가한다”

뭐가 증가하는지 알기 전에, 일단 엔트로피가 뭔지 알아야 한다. 엔트로피는, 온도 변화에 필요한 열량으로 정의된다.

열역학에서는 온도와 열량은 측정해서 알 수 있는 것으로 생각한다. 그리고 열역학 제 2법칙은 열역학의 기본 “법칙”이므로 받아들이면 된다. 물리학에서 법칙이란 왜그러는진 모르겠는데 그렇다고 가정하면 모든 문제가 깔끔하게 해결되는 일종의 마법을 의미한다. 따라서 열역학 법칙은 그냥 받아들이고 외워서 문제를 풀면 된다.

하지만 “법칙”이 아니라고 한다면? 좀 더 본질적인 측면에서 보면 그것은 법칙이 아니라 유도되는 당연한 결과 아닐까?

어떤 물체의 온도와 열에너지에 관련된 문제를 풀다 보면, 어쩔 수 없이 통계역학에 손을 대야 하는 때가 오는데, 흥미롭게도 열역학에서 사용하는 “기본” 물리량들이 통계역학에서는 유도되는 물리량이 되는 것들을 확인할 수 있다. 그렇다면 엔트로피를 알아내는데 사용하는 물리량들이 유도되는 물리량이니까, 열역학 제 2법칙도 결국은 어딘가에서 유도되는 법칙일지도 모른다.

사실 열역학 문제는 이상기체 상태방정식과, 조금 어려워 진다면 열 전달 방정식으로 거의 다 풀 수 있다.



[각주:

1

]



하지만 그것만으로는 부족하다. 열역학으로 풀 수 없는 열역학 문제도 존재한다. 그래서 통계역학을 도입한다. 그리고 통계역학은, 알다시피 분배함수 하나로 거의 모든 문제를 해결한다. 엔트로피도 분배함수에서 유도되는 양이다.

그러니까 도대체 무슨 얘기를 하고 싶은건가. 엔트로피가 도대체 뭔지, 그것부터 이해해야 한다.

(다음글에 계속…)

  1. 그 방정식을 푸는 건 수학의 문제니까 조금 다르다.

    [본문으로]

폭우

폭우가 내려서 정말 빗줄기 때문에 한치앞도 안 보이는 길을 버스를 타고 왔다.

그러면서, 마침 인셉션에서 봤던 폭우 장면이 떠올랐다.

영화 인셉션은, 지금 이 현실이 현실이 아니라 꿈이라면 어떻게 할 것인가? 라는 질문을 던진다.

이와 아울러, 한가지 질문이 또 떠오른다. 만약 내 실존이, 현실에서 잠들어 있는 어떤 사람의 꿈 속에서 등장한 무의식에 불과하다면, 나는 과연 누구일까?

탄성계수

에너지에 관한 글을 쓰다 보니 탄성계수에 관한 설명을 해야 할 것 같다.

탄성계수는 물체가 변형에 반응하는 정도를 나타내는 수이다. – 원래는 텐서다.

텐서는 또 뭐냐고 물으신다면, 그저 웃지요. 헐.

복잡한 세상을 이해하는 건 어려운 일이다. 물리학 하는 사람들도 그건 예외가 아니기 때문에, 최대한 쉬운 문제만 풀기 위해서 복잡한 문제를 쉽게 만드는 기술을 익혔다.

위치 에너지와 힘의 관계에서, 힘은 위치 에너지를 미분하면 얻을 수 있다. 그런데 실제 위치에너지는 매우 복잡하고, 따라서 여기서부터 얻어 지는 실제 힘은 역시 매우 복잡하다. 그래서 급수 전개를 쓴다.

$U(x) = a +bx + cx^2 + dx^3 …$

물론, 이걸 미분하여 음수를 취하면 힘이니까

$F(x) = -b – 2cx – 3dx^2 … $

여기서 물리학자들은 2차 항 이후로는 다 필요 없다고 가정하고 버린다. 그 이유는, 우리가 관심있는 문제는 안정적인 어떤 지점에서 아주 조금 벗어난 경우에 대한 문제이고, 안정적인 지점을 0이라고 한다면, 거기서 아주 조금 벗어난 지점 x에 대해서 급수 전개를 하면, 그 x를 여러번 곱할수록 그 영향력이 작아지기 때문이다.

그래서

$F(x) = -b – 2cx $

이렇게 쓰자.

상수로 일정하게 작용하는 힘은, 문제를 풀려고 하는 계 전체를 계속해서 가속하기 때문에 사실 문제를 푸는데 별 도움이 안된다. 그런 힘은 그냥 시간이 얼마나 지났는지 계산한 후, 등가속도 운동 공식 3종세트를 사용해서 변위와 속도를 간단히 알아낼 수 있기 때문이다.

우리가 관심있는건 그 다음이다. 2c 대신에 k를 쓰자.

$F(x) = -kx$

여기서 k를 탄성 계수라고 부른다. 뭔가 이래놓고 보니 뜬금없이 넘어갔다는 느낌이 든다.

어쨌든간에 이건 1차 방정식이기 때문에 풀기 쉬울 거라고 생각하는데, 우리에겐 $F=ma$가 있으니까,

$ma+kx=0$

이렇게 된다. 그리고 이 방정식은 아주 유명한 2차 상미분 방정식이다.

이것들은 교과서에 나오는 얘기들인데, 이제 탄성계수가 뭔지에 대해 조금 더 생각해 보자. 탄성(Elasticity)이란 어떤 특성이다. 이 특성은, 어떤 물체가 외부 힘에 반응하는 특성이다. 만약 아무 반응도 하지 않는다면, 이놈은 우리가 풀 수 있는 문제의 범주에 들어가지 않는다. (다시 말해서, 우린 그것에 대해 아무것도 알 수 없다는 뜻이다.) 특히, 이 특성은 외부 힘이 어느정도 한계를 넘어가지 않으면, 원래 있던 자리로 되돌아가는 성질이 있다. 외부에서 주는 힘이 강하면 강할수록 더 커져야 한다. 탄성력은 이런식으로 작용하는 힘이고, 탄성계수는 이 힘이 얼마나 크게 작용하는지를 알려주는 수이다.



[각주:

1

]


탄성력은 원래 있던 자리로 되돌아가려는 힘이기 때문에, 힘과 정확히 반대 방향으로 작용한다. 하지만, 어떤 이상한 물질의 경우 작용한 힘에 대해서 다른 방향의 힘이 발생하기도 한다. 그런 경우에는 그걸 스트레스라고 한다. (응력이라고도 한다.)

이런식으로 작용하는 경우, 탄성계수는 숫자 하나로 표현되지 않게 된다. 이럴 때에는 행렬로 표시되는데, 그 행렬을 스트레스 텐서라고 한다.

  1. F=ma에서 m을 가속도 계수라고 불러도 된다. 하지만 많은 사람들은 거기에 질량(mass)이라는 이름을 붙여두었다.

    [본문으로]

동기화

정보통신망에서 서로 통신을 하기 위해서 신호의 동기화가 중요하다. 다른 이름으로는 “초치기” 라고도 부르는 이 기술은 고등학교 학생들이 시험 볼 때 부정행위를 저지르기 위하여 사용하면서 유명해진 기술이다. 동기화에는 두가지가 있는데 하나는 클럭 동기화이고, 다른 하나는 글자 동기화이다.

클럭 동기화는, 0과 1을 구별하기 위한 동기화이다.

컴퓨터가 신호를 0과 1만을 이용해서 주고받는건 맞는데, 문제는 뭐가 0이고 뭐가 1인지도 가르쳐 줘야 한다는 것이다. 이걸 어떻게 하냐면, 신호를 보내는 쪽에서 계속 클럭 신호를 보내면 받는 쪽에서 클럭 속도를 조금씩 조절하면서 똑같이 들어올 때 까지 맞춰보는 것이다. 만화에도 나왔다 – “너의 공격패턴을 파악했다. 강약강강…” 뭐 이런거.

이렇게 해서 클럭 동기화를 해 놓고 나면, 이제 그 다음은 글자 동기화이다.

가령, 어느 순간에 다음과 같은 신호를 받았다고 하자.

01011011101010100001010110101010110101010101010101010001010110101010

이게 0과 1로 이루어진 신호인건 알겠고, 이제 이걸 8자리씩 끊어서 아스키 코드로 해석한 후, 글자로 바꾸면 되는데, 문제는 어디서부터 8자리씩 끊느냐이다. 언제부터 시작해야 하는지가 문제인데, 무려 8가지 가능성이 있는 것이다. 그리고 한번 틀리면 그 뒤로 전부 다 틀린다.

그래서 시작할 때 동기화를 위해서 “동기”라는 문자를 보낸다. 뭐 “동기”라는 건 그 신호에 담긴 의미가 그렇다는 것이고.

가령 “01001010”이 그런 의미를 담고 있다고 하자. 그럼 신호를 받는 쪽에서는, 계속 기다리면서 01001010이 연속적으로 들어올 때 까지 기다린다. 그리고 기다리다가 그 신호가 들어오면 그때부터 8자리씩 끊어서 해석을 시작한다.

근데 뭐 이게 하다보면, “10100100”으로 들어오더라도 연속적으로 몇번 들어오면 동기 신호가 될 수도 있다. 그래서 그걸 방지하기 위해서 동기화 신호를 연속적으로 3번정도 보내고 그 다음부터 진짜 신호를 전송하기 시작한다.

이제 독자들의 관심사는, 도대체 이게 초치기랑 무슨 관련인가 – 왜냐하면 성적은 잘 받으면 좋으니까 – 하는 의문이 들 것이다.

초치기 테크닉은, 우선 클럭 동기화에서 시작한다. 시험장에 일반적으로 손목시계는 차고 들어갈 수 있으므로 미리 계획한 인원들이 시간을 초 단위로 모두 동일하게 맞춰놓는다. 이것이 바로 클럭 동기화이다.

그 다음, 인원들 중 공부를 잘하는 인간이 미리 시험 문제를 빠르게 푼다. 한 10분에서 15분 정도.

그리고 미리 약속해둔 시간 – 가령 시작 후 15분 부터 – 이 되면, 신호를 전달한다. 미리 풀어둔 그 사람은 시계를 보다가 적당한 시간에 헛기침을 하는데, 1초때 기침하면 1번, 2초때 기침하면 2번, 등등.

이것이 곧 문자 동기화이다.

하지만 완전 무결점인 방법은 완벽하기 때문에 발생하는 치명적인 단점이 있는데, 시험지 넘기는 시간까지 동기화 되어서, 시험지 넘길 때가 되면 초치기에 참가한 사람이 모두 동시에 시험지를 넘긴다는 점이다.

나 고등학교 다닐 때, 3학년 선배들 중 어느 한 반에서, 반 전체가 이 방법으로 모의고사 풀다가, 시험지 넘길 때 모든 책상에서 “휘리리릭”하는 소리가 동시에 나는 바람에 걸렸다고 한다. -_-;

아무튼. 이런식의 테크닉은 자연계에서도 나타나는데, 유전자가 단백질로 번역될 때 나타난다.

유전자는 알다시피 염기 A, G, T, C로 이루어져 있다. 이 네가지가 어떤 순서로 나타나느냐에 따라 아미노산이 뭐가 오느냐가 결정된다. 근데 아미노산은 20종류고 염기는 4종류니까, 염기 1개가 아미노산 1개로 번역될 수는 없다.(비둘기집의 원리) 따라서, 대충 때려맞춰봐도 염기 3개가 모여 있어야 20종 중의 1개를 지정할 수 있을 것이다. 이 3개를 “부호의 단위”라는 의미로 코돈(Codon)이라고 부른다. 맛있는 돈까스집 이름이 아님에 주의하자.

AGCTCGTCCTCGTATGACGTC…

이런식으로 DNA염기가 배열되어 있다고 하자. 그럼, 도대체 어디서부터 번역을 시작해야 하는 걸까.

그래서, “개시 코돈”이라는 것이 있다. 그것이 바로 AUG인데, AUG는 아미노산 중 메티오닌을 지정하면서 “시작”을 지정하기도 한다. 참고로, DNA의 T는 RNA의 U이다.

위의 신호는 RNA로 전사되면서

AGCUCGUCCUCGUAUGACGUC…

이 된다. 참고로 DNA-RNA-아미노산 번역 과정에서 클럭 동기화는 자동으로 수행된다. A와 T(=U)가 서로 달라붙고 G와 C가 서로 달라붙기 때문에 저절로 잘 맞는다. A와 G사이에 C가 붙는다거나, 그렇게 되진 않는다.

어쨌든, 번역기(=리보솜)는 RNA를 쭉 읽으면서 AUG가 나올때까지 그냥 보낸다. 그러다가 AUG가 나오면 거기에 메티오닌을 붙이고 번역을 시작한다. 이제 그 뒤로 계속해서 적당한 아미노산이 달라붙으면서 번역이 시작된다. 하지만, 여기서도 AUG가 오인받을 수도 있다. 그래서 AUG가 세번 정도는 나와 줘야 번역이 시작된다.

여기서 흥미로운 것은, 자연이 선택한 신호 동기화 방법과 인간이 선택한 신호 동기화 방법과 컴퓨터에게 주어진 신호 동기화 방법이 거의 같다는 것이다. 매체(medium)는 다르지만 결국은 다 거기서 거기라는 걸까.

안장점 찾기 – BSM

안장점은 간단히 말해서 산의 능선이다. 정상에서 정상으로 갈 때 가장 편한 길은 능선을 타고 가는 것이다. 능선을 타고 가다보면, 능선이 정상은 아니기 때문에 내려갔다가 올라가게 되지만 그래도 다른 경로들 중에서는 가장 높기 때문에 덜 피곤하다.

등산하는 사람들이 무조건 가까운 정상으로만 올라간다고 해 보자. 그럼 이쪽으로 가는 사람도 있고 저쪽으로 가는 사람이 있을 것이다. 그걸 Stability region이라고 한다.그럼 어떤 경계가 존재하는데, 그 정확히 그 경계 위에 있는 사람들은 어느쪽으로도 가지 않게 된다. 그러한 Stability region 사이의 경계를 Stability Boundary라고 부른다.

이걸 찾아내는 알고리즘은 다음과 같다.

두 극소값을 이미 알고 있다고 하고, 하나는 시작점, 하나는 도착점으로 한다.

시작점에서 도착점으로 가는 직선을 그리고 그 직선 위에서 극대값을 찾는다.

직선 위의 극대점에서, 직선 방향과 직교하는 공간에 있는 극소값을 찾는다.

방금 찾은 극소값을 시작점으로 하여 처음부터 다시.

이렇게 무한반복하면 안장점으로 수렴한다.


참고 :



Chandan
K. Reddy and Hsiao-Dong Chiang, “A Stability Boundary based Method for
Finding Saddle Points on Potential Energy Surfaces” Journal of
Computational Biology, Vol. 13, No.3, pp. 745-766, April 2006.



[pdf]