숫자 드립 + 기타

10 이하의 소수(prime number)인 2, 3, 5, 7을 소재로 수집한 여러 잡생각들이다.

※ 2

짝수 중에 유일한 소수라는 점에서 큰 의미를 가지며, 2진법 정도면 0과 1, 같고 다름을 분별할 수 있는 최소한의 숫자 체계가 성립하기 때문에 2는 이산수학과 전산학에서 매우 큰 의미를 갖는다. 그 분야에서는 2가 로그 함수의 밑(base)으로도 즐겨 쓰인다. 이분법, 흑백 논리, 음양설 등의 사상적 근간이 되는 수라는 것은 덤.

2가 지니는 전통적인 의미는 위와 같은데, 2010년대부터 한국에서는 모 스타크래프트 프로게이머 때문에 '콩라인'이라는 의미로 2가 매우 유명해지기도 했다.
또한, 본인이 특별히 주목하는 2의 특성으로는,

  • 태양계의 행성 중 태양에서 둘째로 가까운 금성만이 유일하게 짙은 이산화탄소가 가득한 끔찍한 불지옥이다. 그것도, 지구와 가장 가깝고 지구 다음으로 생명체가 살기에 가장 적합할 수도 있었을 행성이 말이다.
  • 성경의 창세기 1장을 보면, 창조 기간 중 둘째 날에만 “하나님 보시기에 좋았더라”라는 말이 없다.
  • 서울 지하철 중 2호선만이 유일하게 순환선이며, 낡은 플랩식 전광판이 2010년까지 가장 늦게까지 남아 있었다.
  • 주찬양 선교단의 과거 앨범 중 2집만이 구성이 특이했으며, 10주년 기념 음반에는 1~7집 중 유일하게 2집의 곡만 단 한 곡도 수록되어 있지 않다.

이러한 징크스도 있다.

※ 3

삼위일체라든가 영-혼-몸 같은 개념 때문에, 3은 성경과 기독교의 관점에서 상당히 친근하고 긍정적인 수이다.

세상에는 '3요소'라는 특성으로 이뤄진 것들이 무척 많다. 우리가 사는 공간이 가로-세로-높이의 3차원이고, 시각 정보를 구성하는 색상 역시 RGB든 그 어떤 형태로든 3요소로 분할된다는 건 우리에게 시사하는 바가 매우 크다.
거기에다 인간의 언어의 음운조차도 크게 세 부분으로 이뤄져서 한글이 초· 중· 종성의 세벌식으로 구성된 것은 덤이다. 어쩌면 삼라만상이 어딜 가든 개념적으로 3으로 가득한 걸지도 모른다.

또한 컴퓨터 소프트웨어도 허접한 버전 1이 처음 나왔다가 과도기인 2를 거친 후, 제 3의 메이저 버전에 와서야 후대에까지 이어지는 뼈대가 완전히 정착된 경우가 적지 않다.
마이크로소프트 Windows는 3.0부터가 상업적으로 성공한 버전인 건 잘 알려진 사실이거니와, 국산 소프트웨어 중에서도 안 철수 씨의 바이러스 백신은 Vaccine III에서 유래된 V3이라는 브랜드가 정착한 것이다.

본인이 개발한 <날개셋> 한글 입력기도 에디팅 엔진과 기본적인 파일 구성, 그리고 각종 클래스 구조의 뼈대는 2004년에 완성된 3.0에서야 정착했으며, 그 여파로 인해 커널의 파일 이름도 ngs3.dll이다. 또한 최 정한 씨가 과거에 개발했던 셸 유틸리티인 MDIR도 정식 명칭은 MDIR-III이다.

※ 5

사람의 손가락과 발가락이 5개 단위이기 때문에 이 수는 우리에게 아주 친숙하다. 약수가 더 많아서 더 유용한 8이나 12가 아니라, 10이 기수법의 기준으로(10진법) 전세계에 보편적으로 통용되게 된 것은 전적으로 이것 때문이다.

그에 반해 손· 발가락이 5개보다 더 많아서 6개 정도 되는 건 전형적인 기형(다지증) 내지 괴물의 상징으로 간주되었다. 성경에도 고대에 손· 발가락이 6개인 거인 괴물 혈통이 있었다는 기록이 전해지며(삼하 21:20; 대상 20:6), 로스웰 추락 UFO 외계인 시체 해부 동영상에도 문제의 외계인의 사지엔 가락이 6개 달려 있다.
(비록 그 동영상은 훗날 낚시 자작극으로 판명이 됐지만, 1947년에 일어난 로스웰 사건 자체는 존재를 부정하기 어려운 듯하다. 그 자작극을 꾸미고 외계인 세트를 만든 사람도, 외계인이니까 손발가락을 5개가 아니라 일부러 6개로 설정했다는 것에 주목할 필요가 있다.)

5에서 수학적으로 더욱 큼직한 의미가 들어있다. 하필 5차 방정식부터가 대수적인 방법으로 일반해를 구하는 게 불가능하다는 것. 쉽게 말해 근의 공식 같은 만능 공식이 있을 수가 없다는 뜻이다.
3차나 4차의 경우, 비록 2차 방정식의 근의 공식 따위와는 비교도 못 할 정도로 복잡하고 어려운 형태이긴 하지만 근의 공식이 있긴 하다. 왜 5차부터 그마저 원천적으로 안 되는 걸까?

유한한 횟수의 사칙연산과 거듭제곱/제곱근의 묶음만으로는 표현할 수 없는 수가 방정식의 근으로 튀어나올 수 있기 때문이다. 근의 공식이 사용하는 연산 수단의 범위 자체를 넘어서는 수가 대수방정식의 근이 될 수 있다는 뜻이다. 그러면서도 정의상 초월수는 아니다. 흠..

예를 들어, 5차보다 한 차원 더 높은 6차 방정식 x^6+x^2-7=0 의 근 중 하나는 다음과 같다.

사용자 삽입 이미지

식은 정말 간단한 형태이지만 근은 가히 미치도록 복잡한 형태이지 않은가? 사람 손으로 계산하기란 거의 불가능한 경지임을 알 수 있다. 그래도 이 수의 6제곱과 2제곱을 더하면 딱 정확하게 7이 나오긴 한다. 이건 그나마 대수적인 범위에 근이 존재하는 사례이다.

그런데 이런 형태로 나오지 않는 근은 도대체 정체가 뭘까?
이걸 제대로 증명하고 이해하려면 군론을 비롯해 온갖 추상적이고 복잡하고 어려운 수학 이론을 동원해야 하며, 나도 거기까지는 잘 모른다. 다만, 초간단한 방정식 x^n=1만을 생각해 보자. 이 방정식의 근은 드 무아브르의 공식에 따라 복소평면에서 원점이 중심이고 반지름이 1인 원에 내접하는 정n각형의 꼭지점을 이루고 있다.

그러므로 180/n도 중, cos/sin값이 대수적인 수로 딱 떨어지지 않는 각도라면, 응당 대수적인 방법으로 나타낼 수 없는 근이 존재하게 된다고 대략 짐작 정도는 할 수 있을 것이다. 가령, n=7인 정칠각형 같은 것 말이다. 그리고 x^n=1부터가 그러하니, 다른 낮은 차수의 계수까지 섞이면 7차가 아닌 5차에서부터 다항식 기반 방정식의 복잡도가 안드로메다로 치솟는가 보다. 나의 수학 감각으로는 이해력이 여기까지가 한계이다.

그런데 어째 수학 패키지들은 그런 복잡한 방정식에 대해서도 근을 numerical한 방법으로 그것도 실수뿐만이 아니라 복소수 범위에서까지 다 찾아 주며, 5차 이상의 방정식이라도 대수적인 방법으로 근을 구할 수 있는 형태라면 아까의 예에서 본 것처럼 근사값이 아니라 symbolic하게 정확한 근을 찾아 주기까지 한다. 도대체 무슨 귀신같은 수치해석 알고리즘을 썼는지 모르겠다.

※ 7

열 손가락 안에 드는 수 중에서 가장 큰 소수인 7은 역수를 10진법으로 나타냈을 때 꽤 긴 순환소수가 등장하는 최초의 수이다. (0.142857...)
정다각형 중에서도 정칠각형은 3~6이나 심지어 8, 10에 비해서는 정말 듣보잡이다. 5는 그래도 황금비하고라도 관련이 있고 작도도 가능한데 반해, 7은 생긴 모습이 안정적이거나 예쁜 구석이 도무지 없고, 수학적으로 작도가 불가능한 최초의 정다각형이다. 자동차의 바퀴를 봐도 휠너트가 7개가 달린 경우는 전혀 없다.

그럼에도 불구하고 현실에서 7의 존재감이 가장 분명하게 나타나 있는 분야는 크게 두 곳인데, 한 주가 전세계 공통으로 7일이라는 점, 그리고 음악에서 한 옥타브의 음계가 하필 7음으로 구성된다는 점이다.

더 나아가 성경에서 숫자의 쓰임에 대해 면밀히 연구해 본 일부 사람들은, 하나님은 이런 불편하고 괴상한 숫자인 7을 무척 좋아하며, 내부적으로 7진법을 사용하시는 게 분명하다고 주장한다. 그래서인지 성경의 책들 중에서도 특히 요한계시록은 온통 7패턴으로 넘쳐나는 책이지 않던가. 무지개의 색깔이 관습상 7개로 분류되고 7이 웬지 행운의 숫자로 여겨지는 게 완전 터무니없는 엉뚱한 심상은 아니라는 뜻 되겠다.

여호수아기에서 여리고 성을 함락시키는 작전을 보면 이스라엘 백성은 6일 동안은 성을 한 바퀴 돌고, 일곱째 날에는 성을 일곱 바퀴 돈 뒤에 함성을 질렀는데 성이 무너졌다(수 6). 그와 비슷한 맥락으로, 계시록에서는 일곱 개의 봉인이 열리는데 마지막 봉인이 열리자 일곱 나팔이 나오고, 마지막 나팔 타이밍 때 재앙이 담긴 일곱 병.. 이런 식으로 이벤트가 꼬리에 꼬리를 잇는다.

과거에 스탈린 휘하의 구소련은 1930년대에 달력에서부터 종교색을 완전히 걷어내겠다는 의도로 독자적인 달력과 1주 5~6요일 체계를 사용한 적이 있었다. 그러나 그 시도는 오래 가지 못하고 실패했다. 7의 존재감은 아무래도 우리가 이제 와서 부정할 수 없을 정도로 깊숙히 파고든 게 분명하다.

※ 기타

1. 5차 방정식 얘기가 기왕 나왔으니 말인데, 수학에서 이런 식의 미지의 영역은 방정식 근 찾기뿐만 아니라 적분에도 있다. 미분은 합성함수나 곱에 대한 미분이 general하게 정립이 돼 있기 때문에 어떤 함수든 미분하기는 쉬운 편이다. 그러나 적분은 그렇지 않다. 부분적분은 말 그대로 식의 형태를 치환 같은 다른 적분 테크닉을 적용하기 유리한 형태로 변형하는 것일 뿐이기 때문에 만능이 아니다.

위키백과에 예가 제시되어 있듯, x^x, exp(-x^2), sin(x)/x, 1/ln(x) 같은 함수들은 부정적분이 어떤 특성을 갖는 함수인지 기존 초월함수들의 조합만으로는 형태가 기술이 되지 않는다.

까짓거 조립은 분해의 역순이고, 적분은 미분의 역순이 아닌가 하는 생각이 들지도 모르나, 수학의 세계는 그렇지 않은 모양이다. 마치 1/x를 적분했더니 ln x(+C)라는 완전히 생소한 함수가 튀어나온 것처럼, 미지의 발상의 전환이 필요한 듯하다.

2. 과학은 창조론과 진화론, 그리고 심지어 천동설-_-과 지동설 같은 이슈 때문에 종교계와 충돌할 거리가 있었다. 하지만 수학은?
“그래도 지구는 돈다.”도 아니고, “그래도 루트 2는 무리수이다.”, “그래도 파이는 초월수이다” 이런 것 때문에 교황청으로부터 무슨 수학자가 박해 받았다거나 하는 역사는 내가 알기로 없다.
설마 대하 4:2 같은 구절을 들고서 원주율은 3이라고 드립을 쳤다거나 하지는 않았을 테니 말이다. -_-;; 그럴 거면 차라리 H2O가 산소라고 드립을 치는 게 낫겠다. ㅋㅋㅋ

Posted by 사무엘

2012/10/19 08:21 2012/10/19 08:21
, , , ,
Response
No Trackback , 4 Comments
RSS :
http://moogi.new21.org/tc/rss/response/745

Trackback URL : http://moogi.new21.org/tc/trackback/745

Comments List

  1. Lyn 2012/10/19 15:07 # M/D Reply Permalink

    신은 주사위놀이를 하지 않는다고 했던 아이슈타인은.... 종교인하곤 충돌 안했군요 ㅡㅅㅡ

    1. 사무엘 2012/10/19 18:13 # M/D Permalink

      과학사를 잘은 모릅니다만, 그래도 상대성 이론은 뭔가 절대적인 관념을 주장하는 전통적인 종교관과 충돌이 좀 있었지 싶습니다.

    2. Lyn 2012/10/19 18:58 # M/D Permalink

      그런데 관련 루머를 찾아봐도 안나오네요... 조용히 넘어 간건가?

    3. 사무엘 2012/10/20 09:57 # M/D Permalink

      아무래도 천동설-지동설이나 진화론 만한 스케일은 아니었을 테니까요.
      하지만 가치관의 대립과 변화가 있었던 건 사실입니다. 프로이트의 '꿈의 해석' 에 필적하는 수준이었죠.

Leave a comment

우리는 학교에서 산수를 배우면서 덧셈을 가장 먼저 배우고, 그 뒤 이들을 묶은 형태인 곱셈을 배운다. 그리고 나중에는 곱셈을 묶은 거듭제곱이라는 걸 배운다. 그런데 덧셈이나 곱셈과는 달리, 거듭제곱은 같은 수를 곱하기를 반복한다는 직관적인 정의만 적용해서는 정수가 아닌 형태의 거듭제곱을 생각하기가 쉽지 않다.

지수법칙이 있으니 유리수 승까지는 그래도 괜찮다. 정수 승과 정수 제곱근으로 설명이 가능하기 때문이다. 하지만 이를 초월하여 2^sqrt(2)처럼 임의의 실수 승은 어떻게 해야 계산하고 표현할 수 있을까?

거듭제곱을 모든 실수 범위에서 정의함으로써 지수함수라 불리는 연속인 함수의 형태로 영역을 확장하는 데는, '연속'이라는 개념에서 알 수 있듯, 미분의 도입이 큰 기여를 했다. 자연상수 e가 발견되고 로그 함수라는 게 생기면서 지수함수는 로그의 역함수로서 정체성을 확립하게 되었다.

이 글에서 수학적으로 엄밀한 디테일을 다 말할 수는 없지만, e는 임의의 수에다 제곱근을 반복하면서 지수가 0에 가까워지고 원래 수가 1에 한없이 가까워질 때 그 수의 소숫점, 다시 말해 숫자에서 1을 뺀 값이 지수와 어떤 비례 관계가 있는지를 규명하는 과정에서 발견되었다. (1+1/n)^n에서 n의 무한대 극한이라는 원론적인 정의가 바로 거기서 유래되었으며, 사실, (1+x/n)^n라고 해 주면 그냥 exp(x)를 바로 구할 수 있다.

exp(x)는 0인 지점에서 기울기가 1이다. 그리고 미분해도 도함수가 자기 자신과 같다는 매우 중요한 특징이 있다. 즉, y=exp(x)에 있는 점 (x, y)의 기울기는 곧 y라는 뜻. 그럼 이놈의 역함수는 어떻게 될까? 본디 함수와 그 역함수는 y=x에 대해 대칭이므로, 점 (y, x)의 기울기는 곧 1/y여야 한다.

미분하면 1/x가 되는 함수를 찾아보니 다름아닌 ln x이다. 복잡한 거듭제곱을 곱셈으로, 곱셈은 덧셈으로 바꿀 수 있는 놀라운 함수 말이다. 그래서 exp는 로그의 역함수인 고로 그 정체가 e^x인 지수함수라는 결론이 도출되고, 그래서 로그와 지수의 함수 관계가 완성될 수 있었다.

a^b = e^(b ln a)이다. ln a^b는 b ln a이므로 양변에 자연로그를 씌우면 아주 자연스럽게 유도 가능하다.

또한 굳이 밑이 e가 아닌 임의의 a인 로그를 생각하더라도, log[a] b = ln b / ln a이다. 이것은 지수보다는 약간 연상이 쉽지 않을지 모르나, 이 경우를 생각해 보자. 로그의 정의상 당연히 a^(log[a] b) = b이다. 이 식 자체에다가 자연로그를 씌우면 log[a] b * ln a = ln b가 되고, 그 후의 논리 전개는 생략. ㄲㄲ

이건 굉장히 유용한 특징이다. 이 덕분에 exp와 ln만 있으면 우리는 임의의 지수의 값도 구할 수 있고, 임의의 로그의 값도 구할 수 있게 된다.
그럼 이 함수의 값을 실제로 컴퓨터로 어떻게 계산하면 좋을까?

이걸 연구하는 분야는 기호, 순수함, 추상성만을 좋아하는 전통적인 수학에서 벗어나 일면 '지저분한 이단아'처럼 보일 수도 있는 수치해석 쪽으로 가게 된다. 컴퓨터에서 exp, ln, cos, sin 같은 기초적인 초월함수의 값을 조금이라도 더 빠르고 정확하게 구하는 기법은 이미 천재 컴덕후, 수학자, 공학자들이 연구할 대로 다 연구해서 소프트웨어 정도가 아니라 아예 하드웨어에 회로에 다 코딩되어 있을 정도이다.

그러니 내가 거기에 뭔가를 더 기여할 게 있다고 여겨지지는 않는다. 단지 본인은 핵심적인 아이디어만 직접 짜 보고 넘어갈 생각이다.
초월함수들의 근사값을 계산하는 아이디어도 미분에서 유래되었다. 단순히 1차함수 접선을 구하는 것을 넘어서 곡선과 가장 가까운 n차 근사 다항식을 구하는 것으로 생각을 확장하면 '테일러 근사 다항식'이라는 걸 구할 수 있고, 무한히 미분 가능한 함수에 대해서는 무한합인 그 이름도 유명한 테일러 급수라는 걸 유도할 수 있다.

* 이말년 씨리즈와 Taylor series는 서로 느껴지는 포스가 확 다르다. 흠.;;;

exp(x)는 예전에도 글로 썼듯이, 원론적인 정의를 이용해서 값을 구할 리는 절대 없고, 테일러 급수를 쓴다. 아래의 코드는 16항 정도까지 계산했다.

double pseudo_exp(double x)
{
    double v=1.0, p=x,q=1.0;
    for(int i=1; i<=16; i++, v+=p/q, p*=x, q*=i);
    return v;
}

단, 이 급수는 x=0인 지점을 기준으로 구한 것이기 때문에 x가 8~9 정도만 넘어가도 오차가 상당히 커진다. 하지만 컴퓨터 부동소숫점에도 한계가 있으니 항을 한없이 많이 계산할 수도 없는 노릇이고, 큰 수에 대해서는 다른 방법으로 보정이 필요할 듯하다.

한편, 로그는 어떻게 구할까?
자연로그도 다음과 같은 직관적인 형태의 테일러 급수가 있긴 하다.

ln (1+x) = x (+-) x^n/n (n이 짝수일 때는 빼기, 홀수일 때는 더하기)

그런데 이 급수는 x가 -1 초과 1 미만일 때만 유효하고, 따라서 0과 2 사이의 로그값만 구할 수 있다. 나머지 범위는 항을 제아무리 많이 계산해 줘도 아예 원천적으로 원함수와 전혀 일치하지 않게 된다. 테일러 급수가 모든 범위에 대해서 무조건 만능은 아님을 알 수 있다.

하지만 지수함수와는 달리 로그는 ln ab = ln a + ln b라고 큰 숫자를 한없이 쪼개는 마법과 같은 공식이 있다. 그러므로 저것만 있어도 아무 수의 로그라도 구할 수 있다.

즉, ln 2의 값을 미리 갖고 있다가 임의의 수에 대해서 2보다 작아질 때까지 ln 2를 따로 더하면서 계속 2로 나누면 된다. 2는 잘 알다시피 2진법을 쓰는 컴퓨터가 좋아하는 수이기도 하고 말이다. 그래서 주어진 수가 2 이하의 범위에 들어오면 그때 급수를 써서 최종적으로 구한 로그값을 또 더하면 된다.

double pseudo_ln(double x)
{
    #define LN_2  0.693147180559945
    double v=0;
    while(x>2.0) x/=2.0, v+=LN_2;

    double x_min1 = x-1, xm = x_min1;
    for(int i=1; i<=16; i++, xm*=x_min1)
    if(i&1) v+=xm/i; else v-=xm/i;
    return v;
}

단, 이 급수의 아쉬운 점은 x가 0이나 2라는 양 극단에 가까워질 때 정확도가 꽤 크게 떨어진다는 점이다. 이는 계산하는 항의 수를 충분히 크게 잡아도 쉽게 극복되지 않는다.

그래서 성능면에서 실용적인 가치는 별로-_- 없지만, ln이 exp의 역함수라는 점을 이용하여, 기존 exp 함수로부터 방정식 근 찾기 기법을 이용하여 로그를 구하는 방법도 이 기회에 실습하게 되었다. 그게 없으면 무엇보다도 초기에 정확하게 값이 구해진 채 공급되어야 하는 LN_2 내장값은 또 어떻게 구하겠는가?

일변수 방정식의 근을 찾는 기법은 수치해석 교재에서 가장 먼저 다뤄지는 기초 주제이다.
exp(x)는 기복이 없으며 그래프 모양이 워낙 예쁘고 원천적이기-_- 때문에, 근이 존재하는 초기 구간만 잡아 주면, 어떤 근 찾기 알고리즘을 쓰더라도 근을 구할 수는 있다. 단지 얼마나 빨리 수렴하여 구해 내느냐가 문제일 뿐이다. 애초에 지수 함수 정도면 범용적인 방정식 근 찾기 알고리즘이 과분하게 느껴질 정도로 특징이 너무 분명하기도 하고 말이다.

가장 먼저 나오는 것은 이분법(bisect)이다. 이게 자료구조에서는 이분법이라고 하면 이분 검색처럼 log n 시간 만에 문제를 푸는 효율적인 알고리즘이라고 불리는 반면, 수치해석에서는 정수 개의 discrete한 데이터가 아니라 사실상 연속인 구간을 다룬다. 그렇기 때문에 통상적인 이분법조차도 수렴이 느린 비효율적인 방법으로 간주된다.

double solve_bisect( double (*pfn)(double), double v )
{
    double f=-10.0, t=10.0; int nt=0;
    while(1) {
        double d = (f+t)/2.0;
        double p = pfn(d) - v;
        if(fabs(p) < 0.000001) break;
        if(p > 0) t=d; else f=d; nt++;
    }
    return f; //nt는 계산 횟수 counter
}

double pseudo_ln2(double x)
{
    return solve_bisect(pseudo_exp, x);
}

근 찾기 알고리즘 중에서는 뉴턴-랩슨(혹은 그냥 뉴턴) 법이 수렴이 매우 빠른 알고리즘으로 여겨지고 있다. 이 방법은 이분법과는 달리 시작점과 끝점이라는 구간을 잡고 시작하는 게 아니라 시작점에서 해당 방정식의 접선을 그은 뒤, 접선과 x축이 만나는(y=0) 지점을 다음 점으로 잡는다. 이 작업을 방정식의 값이 근인 0과 충분히 가까워질 때까지 반복한다.

사용자 삽입 이미지


방정식 f(x) 위의 점 (x_0, f(x_0))을 지나는 접선의 방정식은 기울기가 f'(x_0)일 테니 y=f'(x_0)*x + f(x_0) -f'(x_0)*x_0이 된다. 그래야 x에다가 x_0을 집어넣었을 때 f'(x_0) 나부랭이는 소거되고 함수값으로  f(x_0)만 남기 때문이다.
이 접선이 y=0을 만족시키는 다음 점 x_1을 방정식으로 풀면 x_1=x_0 - f(x_0)/f'(x_0)이라는 생각보다 깔끔한 식이 나온다. 이를 코딩하면,

double solve_newton( double (*pfn)(double), double (*pfn_prime)(double), double v )
{
    double d = 0.0; int nt=0;
    while(1) {
        double p = pfn(d) - v;
        if(fabs(p) < 0.000001) break;
        d = d - p / pfn_prime(d); nt++;
    }
    return d;
}

double pseudo_ln3(double x)
{
    return solve_newton(pseudo_exp, pseudo_exp, x);
}

뉴턴 법 함수는 도함수의 포인터를 별도로 받는데, exp는 어차피 도함수가 자신과 동일하므로 자신을 한번 더 넘겨주면 된다는 점도 특징이다.

프로그램을 실제로 돌려 보면 알겠지만, 동일 오차 범위를 줬을 때 뉴턴 법은 이분법보다 통상 2~5배나 더 빨리 수렴하는 걸 볼 수 있다. 마치 퀵 정렬이 pivot을 기준으로 자료가 그럭저럭 이미 정렬돼 있을수록 더욱 빨리 동작하고 자료의 상태에 민감하듯, 뉴턴 법은 접선과 가까운 형태의 부드러운 곡선일수록 수렴이 더욱 빨라진다.

자, 지금까지 공대 학부 수준의 아주 허접한 수학 덕질을 감각 유지 차원에서 잠시 복습해 보았다. 각종 공식들이 유도되는 원리를 좀 더 깊이 생각해 보고 싶으나 시간과 여유가 부족하다.

아, 수학에서는 거듭제곱뿐만이 아니라 팩토리얼까지도 자연수가 아닌 실수, 그리고 복소수 범위에까지 정의하고 그 증가폭을 측정하는 방법에 대해 연구가 진행돼 있다. 그 일환으로 ln n!이 n log n - n과 얼추 비슷하다는 스털링의 공식이 있고, 그보다 더 괴랄한 감마 함수라는 것도 있어서 z! = Γ(z+1)이다. 머리 좋은 똘똘이들의 수학 덕질의 끝은 도대체 어디까지인지를 다시 생각하게 된다.

Posted by 사무엘

2012/09/10 19:32 2012/09/10 19:32
, , , , ,
Response
No Trackback , 2 Comments
RSS :
http://moogi.new21.org/tc/rss/response/731

Trackback URL : http://moogi.new21.org/tc/trackback/731

Comments List

  1. Lyn 2012/09/11 11:49 # M/D Reply Permalink

    뭔말인지 (...)

    전 공대학부수준의 수학을 이해할수 없나봅니다 T.T

    1. 사무엘 2012/09/11 21:20 # M/D Permalink

      저런 것과 관련된 프로그램을 당장 만들어야 하고 덕질을 할 동기가 생기면, 물미가 금세 트일 거예요.
      저도 수학덕들 머리 구조를 누구보다도 이해를 못 하는 1人입니다. 정말로.. ㅎㅎ

Leave a comment

조화평균, 조화수열, 황금비

1. 조화평균과 조화수열

우리는 중등 학교의 수학에서 산술, 기하, 조화평균을 배운다.
물론, 대부분의 일상생활에서 숫자를 다룰 때는 단순히 합계를 자료의 개수로 나누기만 하는 산술평균 하나만 있어도 충분하다. 그러나 다른 개념의 평균이 필요할 때도 있다.

가령, 어떤 수치가 1년 간격으로 예전보다 3배, 4배, 5배씩 증가해서 총 60배가 되었다면, 이를 해마다 4배씩 증가했다고 싸잡아 간주할 수는 없는 노릇이다. 4의 3승은 64이지 60이 아니기 때문이다.

이런 식으로 비율 내지 배율을 좋아하는 계산 분야에서는 기하평균이 필수이다. 앞의 예에서는 (3+4+5)/3이 아니라, 3*4*5의 세제곱근인 약 3.915가 정확한 값이다.

그럼 조화평균은 무엇이며 어떤 용도로 쓰일까?
역수의 산술평균을 또 역수로 취한 값이 바로 조화평균이다. 두 수 a, b의 조화평균을 그 정의대로 구해서 식을 정리하면 2ab / (a+b)가 나온다. 쉽게 말해 곱을 합으로 나눈 셈이다.

자동차가 동일한 길이의 두 구간을 달리는데 한 구간은 시속 30km로, 다른 구간은 시속 60으로 달렸다면, 전체 구간에 대한 자동차의 표정 속도는 30과 60의 조화평균인 시속 40이 나온다. 한 구간의 길이가 30km였다고 생각해 보면 가는 데 시속 30으로 1시간, 시속 60으로 30분이 걸렸을 터이니 전체 60km를 1시간 반 만에 주파하는 속도는 시속 40이기 때문이다.

반대로 길이가 중요하지 않고 소요 시간의 절반을 시속 30으로 달리고 나머지 소요 시간 동안 60으로 달렸다면 자동차의 표정 속도는 응당 산술평균인 시속 45가 될 것이다. 관점의 차이를 이해하시겠는가?

학교에서 조화평균은 병렬 연결된 저항들의 전체 저항값을 구할 때 정도에나 쓰였지만 교통 관련 계산을 할 때 더욱 유용히 쓰일 수 있다.
어떤 노선에 버스가 5분 간격으로 다닌다고 치자. 그런데 5분으로도 모자라서 그 상태에서 3분 간격의 버스가 추가로 더 투입되었다면, 실질적인 배차 간격은 얼마로 좁혀졌다고 볼 수 있을까?

답부터 말하자면 이 값은 5와 3의 조화평균의 절반과 같은 1.875분이다.
5와 3의 최소공배수인 15분이라는 시간을 생각해 보면, 그 동안 5분 간격 버스는 3대가 다닐 수 있다. 그러나 3분짜리 버스는 5대가 다닐 수 있으므로 15분 동안 버스가 총 8대로 늘어난 셈이 된다.

따라서 실질적인 평균 배차간격은 15를 8로 나눈 1.875분이다. 5와 3의 조화평균인 3.75는, 5분 간격 버스와 3분 간격 버스를 합친 것이 3.75분 간격 버스 두 대를 합친 것과 동일한 증차 효과를 낸다는 걸 의미한다.

임의의 동일한 수들에 대해서 기하평균(G)은 산술평균(A)보다 크지 않으며, 조화평균(H)은 기하평균(G)보다 크지 않다는 것이 증명되어 있다. 그리고 아예 H=G^2 / A라는 항등식도 알려져 있다. 어떤 데이터에 대해서 두 종류의 평균값을 알고 있으면 다른 한 평균값은 그로부터 유도해 낼 수 있다는 뜻이 되겠다.

한편, 1/3, 1/4, 1/5 ~처럼 역수가 등차수열을 이루는 수열은 조화수열이라고 한다. A, A와 B의 조화평균, B으로 구성된 세 수는 응당 조화수열이다.
이건 등차나 등비수열도 아니고 도대체 무슨 의미가 있는지 궁금할 것이다. 하지만 자연에서 조화수열은 아주 직관적으로 쉽게 찾을 수 있다. 이름에 괜히 harmonic이 붙은 게 아니다.

일단 우리 눈에 사물이 비쳐 들어오는 원근법이란 게 반비례이기 때문에 조화수열과 관계가 있다. 직선으로 뻗은 도로에 균일한 간격으로 그어진 차선을 보자. 멀리 떨어진 놈일수록 중앙의 소실점에 가까워지고 겉보기 간격이 더욱 조밀해진다. 그 간격이 수학적으로는 바로 조화수열인 것이다.

거시적으로 보면 태양은 달보다 N배나 더 크지만 지구로부터의 거리도 똑같이 N배나 더 멀리 떨어져 있다. 그렇기 때문에 지구에서의 겉보기 크기가 둘이 거의 같으며 일식도 일어날 수 있다.

사람의 뇌는 두 눈이 보내 준 2차원 영상을 합성하여 3차원 공간을 인지하는 능력이 대단히 발달해 있다. 그런데 그 능력은 수학적으로 따지자면, 2차원 조화수열 간극으로부터 3차원 등차수열 간극을 유추하는 게 상당수를 차지하고 있을지도 모른다. 그만큼 조화수열은 우리에게 친숙한 존재이다.

그 다음으로 우리가 조화수열을 시각적으로 볼 수 있는 흥미로운 분야는 음악이다. 실로폰도 그렇고 파이프 오르간이나 하프도 그렇고, 음을 만들어 내는 매체는 저음이 언제나 길고 고음은 한 치의 예외 없이 짧다.

그런데 그 짧아지는 간격이 조화수열이다. 매체를 그런 간격으로 만들면 소리의 파형 주기는 기하급수적으로(=등비수열) 짧아지는 평균율 음계가 나오는가 보다. 어떻게 그게 물리적으로 가능한지는 잘 모르겠다.

2. 황금비

조화수열이라는 말이 나왔으니 말인데, 아름다움이나 조화 같은 걸 수학적으로 설명할 때 빠짐없이 등장하는 건 황금비이다.

기본 발상은 a:b = (a+b):a 비례식을 만족하는 a와 b의 비율이다. 음, 뭔가 심오하지 않은지? 쉽게 말해 긴 변과 짧은 변의 비율이, 긴 변과 짧은 변을 합한 것하고 긴 변과의 비율과 같은 걸 말한다. 이걸 식으로 표현하면 이차방정식으로 귀착되고, 황금비의 값은 (1+sqrt(5))/2, 대략 1.618이 된다.

황금비 상수는 뭔가 심오함이나 신비로움, 괴팍함이 느껴지는 초월수도 아니고, 간단한 이차방정식만으로 값을 구해서 모든 특성을 파악할 수 있는 평범한 대수적 수에 불과하다. 그런데 이게 왜 그렇게 중요한 걸까?

인간이 보편적으로 새벽 2시에 가장 깊이 잠들어 있는지, 저녁 8시에 죄책감 없이 가장 잔인해지는지는 잘 모르겠지만, 저 비율이 인간이 보편적으로 가장 심리적인 안정감과 균형과 조화를 느낀다고 그런다. 오죽했으면 golden ratio라는 이름이 붙었겠는가? 이것 말고 golden이라는 말이 붙은 개념은 “자신이 대접받고 싶은 만큼 남에게도 대접해 줘라”로 요약되는 golden rule 정도밖에 없다.

얼굴의 이목구비 배치 비율도 그렇고 무슨 동식물이나 건축물의 외형에도 황금비가 적용되어 있다고 그런다. 하지만 현대인에게 가장 뼈저리게 황금비를 느낄 만한 요소는 카드(교통 카드, 신용카드 등등~)의 가로· 세로 비율이 황금비라는 점 하나로 게임 끝이 아닐까 싶다. 그렇다. 바로 그 비율이 황금비이다.

1 1 2 3 5 8 13 21~ 로 이어지는 그 유명한 피보나치 수열도 현재 항과 이전 항의 비율이 황금비로 수렴한다는 건 잘 알려진 사실이다. 일반항을 구하는 공식엔 응당 황금비 상수가 들어간다.

또한, 0부터 시작해서 x=sqrt(1+x)를 무한 반복해도 x는 황금비로 수렴한다. 계산 과정의 특성상 x는 sqrt(2)도 한 번 거치지만, 궁극적으로는 다른 수로 수렴하게 된다는 게 흥미롭다.
황금비는 역수가 자신에서 1을 뺀 값과 같다는 특징이 있기도 하다. (0.618...) 1/x = x-1인데, 이는 특별한 게 아니라 황금비의 정의의 특성상 당연한 귀결이다.

도형 중에서는 정오각형이 변 길이와 대각선 길이의 비가 황금비이다.
1마일이 대략 1.609km인 건 아무래도 황금비와는 관계가 없고 전적으로 우연인 듯하다.
또한 종래의 4:3 aspect ratio를 깨고 컴퓨터 화면이 가로로 좀 더 길쭉한 추세로 가는 것 역시, 사람들이 황금비를 심리적으로 더 좋아해서인지는 모르겠다.

한편, A4나 B4 같은 용지의 길이 비율은 황금비가 아니라 sqrt(2)이다. 본인은 A4 용지의 크기가 210*297mm인 건 알고 있었지만 그 비율이 sqrt(2)를 표방한 것인 줄은 전혀 모르고 있다가 최근에 알게 되고는 크게 놀랐다. 심심해서 297을 210으로 나눠 봤는데 딱 1.414...가 나왔으니 말이다.

이런 비율의 장점은 우리가 이미 실생활에서 적지 않게 경험한 적이 있지 싶다. 종이를 반으로 접어도 크기 비율이 접기 전과 동일하게 유지된다는 것.
즉, 황금비가 a:b = (a+b):a를 추구했다면, 용지는 a:b = b:a/2를 추구한 셈이다.
황금비가 길이가 1인 정오각형의 대각선 길이라면, sqrt(2)는 길이가 1인 정사각형의 대각선 길이이다.

원래는 조화수열에 대해서만 글을 쓰려고 했는데 어쩌다가 황금비까지 나오면서 얘기가 옆길로 샜는지 모르겠다. 둘은 실용적인 의미가 약간 유사점이 있다 보니 미묘하게 한 글로 엮이게 된 것 같다.

Posted by 사무엘

2012/07/25 08:26 2012/07/25 08:26
, ,
Response
No Trackback , 4 Comments
RSS :
http://moogi.new21.org/tc/rss/response/711

Trackback URL : http://moogi.new21.org/tc/trackback/711

Comments List

  1. 주의사신 2012/07/25 09:02 # M/D Reply Permalink

    1. 기하평균이 어디에 쓰는가 조금 궁금했던 적이 있었는데, 잘 알고 갑니다.

    2. 어릴 적 봤던 "요리왕 비룡"이라는 요리 만화에 "황금비 군만두"라는 것이 나왔던 적이 있습니다. 재료가 4개인가 들어가는데 그 재료의 위치를 잘 잡아서 맛의 황금비를 잡았다는 것이었습니다.... 소개 중에 배경에 삼각형이 있었던 것 같네요.

    1. 사무엘 2012/07/25 10:40 # M/D Permalink

      1. 글을 올린 뒤에 문득 생각났는데요, 기하평균은 숫자들을 모두 로그를 취한 뒤, 그 로그값들의 산술평균을 구하고 그 평균으로 로그 base의 승을 구했다고 볼 수 있습니다.
      즉, 조화평균이 역수의 산술평균의 역수라면, 기하평균은 로그의 산술평균의 지수인 셈이죠.

      2. 하하, 그 황금비는 수학에서 말하는 황금비하고는 다른 개념인 것 같습니다. <김밥천국>의 천국이, 성경이 말하는 천국하고는 무관한 것처럼요. ^^

  2. Paul Sohn 2012/07/31 00:08 # M/D Reply Permalink

    조화평균은 물리에 좀 더 많이 쓰입니다.
    합성 축전기 전기용량 공식, 용수철 직렬연결시 후크상수 계산, 피타고라스 음향학이 대표적인 예입니다.

    그러고 보니, 기독교를 표방하는 몇몇 사이트 중에는 피타고라스 때문에 수학 자체를 디스하는 곳도 몇몇 있더군요.
    웹엔 별별 사람이 다 있다는 건 알았지만 말입니다;;

    1. 사무엘 2012/07/31 16:07 # M/D Permalink

      물리에서 의외로 그런 예가 더 많이 발견되는군요.
      중학교 2학년 과학 시간에 병렬 회로에서의 전체 저항을 구하는 공식이 거의 최초로 접한 조화평균이었는데, 그 당시에 저는 그게 조화평균이라는 걸 몰랐죠.

      수학 자체는 가치와 이념에 절대적으로 중립적이고, 어쩌면 그것도 하나님의 질서와 조화의 성품, 지적인 성품을 알아 가는 아주 좋은 학문입니다. 그런데 역사적으로 그거에 탐닉했던 덕후들 중에 종교관이 심하게 불량했던 사람들이 종종 있었고, 그 수학 원리 자체를 신성시하고 숭배하는 경우가 있었던 건 사실입니다.
      너무 오버해서 과학 기술 자체도 디스하는데 수학을 디스하는 건 동의는 못 해도 이해는 하겠습니다.

Leave a comment

최소자승법에 의한 그래프 근사

수치로 표현된 실험 데이터로부터 규칙를 추출하여 추세를 예측하는 것은 과학과 공학에서 아주 유용하게 쓰이는 통계 기법이다.
“input이 x1과 x3일 때 실험으로부터 얻어진 output이 각각 y1과 y3이었으니, 중간에 직접 실험을 해 보지 못한 x2에서는 결과가 아마 y2가 될 것이며(내삽), 더 나아가 범위를 벗어난 x5일 때는 결과가 y5 정도로 나올 것이다(외삽).”

n개의 실험 데이터 (x_1, y_1) 부터 (x_n, y_n)이 있다고 치자. x는 input이요, y는 output을 가리킨다. x_1...n은 꼭 균일한 등차수열 간격으로 분포해 있을 필요는 없다.
우리는 이 실험 데이터의 추세를 잘 나타내는 함수 F(x)를 얻고 싶다. F는 간단히는 그냥 직선을 나타내는 일차함수일 수도 있고 이차나 삼차, 혹은 임의의 계수를 지니는 지수나 로그 함수일 수도 있다.

그 디테일이 어떠하든 F(x_1)은 y_1과 최대한 비슷한 값이 나오고 그런 식으로 1부터 n 사이에 있는 자연수 i에 대해서 F(x_i)는 y_i와 최대한 비슷한 값이 나오면 된다. 그럼 그 F는 실험 데이터의 특성을 잘 나타내는 좋은 함수로 여겨질 것이며 내삽과 외삽에 활용될 수 있다.

최대한 비슷하다는 걸 수학적으로 어떻게 엄밀하게 표현할 수 있을까? i=1...n에 대해,  함수값과 실제 데이터의 차이인 F(x_i)-y_i가 작아야 할 것이다. 오차라는 건 양이든 음이든 절대값이 중요한데 절대값은 미분 같은 수치해석적인 처리가 어려운 연산이니 이럴 때 제곱이 쓰인다. 데이터의 분산을 구할 때와 같은 접근 방식이다. 결국 문제는

각 데이터들에 대한 오차들의 제곱의 합 = (F(x_1)-y_1)^2 + (F(x_2)-y_2)^2 + (F(x_3)-y_3)^2 … (F(x_n)-y_n)^2

이것을 최소화하는 F를 구하는 것으로 귀착된다.
그래서 이 계산법의 이름이 최소자승법/최소제곱법(least square method)인 것이다.

최소자승법이 하는 일은, 그 F(x)가 여러 함수들의 합으로 이뤄질 때, 각 함수들에 들어가는 적절한 계수를 구해 준다.
가령 F(x)가 계수가 3개 존재하는 2차함수여서 a*x^2 + b*x + c 의 형태라면, F(x) = a*f(x) + b*g(x) + c*h(x) 의 세 계수를 생각할 수 있다. 하지만 f, g, h가 실제로 무슨 함수인지는 최소자승법에서 중요하지 않다.

오차의 제곱의 합 함수를 이를 기준으로 다시 써 보면,
∑ i=1..n에 대해 ( a*f(x_i) + b*g(x_i) + c*h(x_i) - y_i )^2 가 된다.

이 식을 전개하면 제법 복잡한 항들이 줄줄이 나오겠지만, 겁먹을 필요 없다.
f, g, h는 언제든지 값을 집어넣어서 계산할 수 있는 함수이고, x_i와 y_i는 전부 상수일 뿐이다.
식에서 변수는 a, b, c이며, 제곱 버프 덕분에 오차의 제곱의 합은 a, b, c에 대한 이차식이 된다.

식의 값이 최소가 되려면, a, b, c에 대해 제각기 따로 생각했을 때, 해당 이차식의 미분계수가 0이 되는 지점에 a, b, c가 있어야 한다. 이것이 우리가 구하고자 하는 F(x)의 정체이다.
가령, x^2 + 2*x - 3 이라는 이차식을 생각해 보면, 이건 (x-1)(x+3)으로 인수분해가 되기 때문에 식의 값을 0으로 만드는 근은 1과 -3이다. 그러나 식을 x에 대해 미분하면 2*x+2가 되고 1과 -3의 중간 지점인 -1이 바로 도함수의 값을 0으로 만들어서 최소값 -4를 만들어 낸다.

우리가 풀고자 하는 문제가 다루는 식은 a, b, c 같은 여러 변수들이 존재하기 때문에, 동일한 식을 각 변수별로 편미분을 해야 한다. 그러면 다음과 같이 규칙성이 있는 3개의 연립 일차방정식이 완성된다. 세 개의 변수의 계수에 다른 변수가 포함되어서 서로 얽혀 있기도 하기 때문에, 각 변수별로 미분계수를 모두 0으로 만들 수 있는 변수들의 값은 이런 방정식을 풀어야 구할 수 있다.

2*f(x_i)*f(x_i)*a + 2*f(x_i)*g(x_i)*b + 2*f(x_i)*h(x_i)*c - 2*f(x_i)*y_i = 0 (a에 대해서)
2*g(x_i)*f(x_i)*a + 2*g(x_i)*g(x_i)*b + 2*g(x_i)*h(x_i)*c - 2*g(x_i)*y_i = 0 (b에 대해서)
2*h(x_i)*f(x_i)*a + 2*h(x_i)*g(x_i)*b + 2*h(x_i)*h(x_i)*c - 2*h(x_i)*y_i = 0 (c에 대해서)

변수가 3개보다 더 많더라도 결국은 이런 패턴의 식이 나온다! _i로 표현된 건 합계를 다 해 줘야 한다는 걸 잊지 말고.
고맙게도 양변은 2로 나눠 버리기 딱 좋게 돼 있으며, 상수항은 음수로 나와 있으니 우변으로 옮기기도 좋다.
위의 식은 결국 다음과 같은 Ax=b 꼴의 행렬로 너무나 깔끔하게 나타낼 수 있다. (행렬은 전치행렬과 자신이 서로 동일한 대칭행렬이다.)

[ F*F F*G F*H ] [ a ]   [ F*y ]
[ G*F G*G G*H ] [ b ] = [ G*y ]
[ H*F H*G H*H ] [ c ]   [ H*y ]

그리고 우리가 구하고자 하는 계수 벡터 x는 A의 역행렬에다가 b를 곱하면 구할 수 있다. 참 쉽죠?

이것이 행렬의 힘이다.
<날개셋> 타자연습에서 타자 속도 그래프를 얼추 비슷한 곡선 함수로 표시해 주는 기능,
그리고 엑셀에서 추세선을 그어 주는 기능들도 다 이 최소자승법 알고리즘을 써서 구현되어 있다.

아래의 그림은 지난 5년간 <날개셋> 한글 입력기의 전체 소스 코드 라인 수의 증가 추이와, 이를 토대로 최소자승법으로 구한 추세선(직선) 그래프이다. 2009년 상반기에 5.3 버전이 개발되었을 때 약간 가파르게 소스 코드가 증가했지만, 그 후로는 증가가 비교적 원만했음을 알 수 있다. 1년에 약 4천 줄 꼴로 코드가 증가한 것인지?

사용자 삽입 이미지

Posted by 사무엘

2012/06/21 08:41 2012/06/21 08:41
,
Response
No Trackback , 8 Comments
RSS :
http://moogi.new21.org/tc/rss/response/698

Trackback URL : http://moogi.new21.org/tc/trackback/698

Comments List

  1. Lyn 2012/06/21 10:06 # M/D Reply Permalink

    조... 좀더 쉽게 설명을좀 ㅠ.ㅠ

    1. 사무엘 2012/06/21 16:14 # M/D Permalink

      중간에 몇몇 식의 전개 결과를 그냥 수학 패키지를 돌린 결과로 바로 삽입하고 생략을 했을 뿐입니다.
      너무 어려울 것 없어요. ^^

  2. 백성 2012/06/22 16:48 # M/D Reply Permalink

    1. 저.. 저거!!
    어느 선에서 일차함수로 나타내지겠죠. 기능은 꾸준한 추가, 적절한 패치

    2. 도함수 구해서 계수판정이라, 흥미롭군요.
    2차까지는 뭐 그래도 그럭저럭 볼만한데 3차함수부터 4x4행렬이 나와서
    ..풀수야 있지만 아직 그쪽은 흥미가 안 가고 컴돌리는게 빠를겁니다.

    3. 타자연습 근사 그래프는 아마 3차함수였나요?

    1. 사무엘 2012/06/22 23:34 # M/D Permalink

      2. 본질을 잘 이해했군요. 핵심 아이디어는 도함수 구해서 계수 판정이죠.
      3. 네, 3차함수 맞습니다.

  3. 김재주 2012/07/07 17:01 # M/D Reply Permalink

    이 방법으로 근사함수의 꼴이 정해져 있을 때 오차를 최소로 하는 계수는 찾을 수 있는데, 근사 함수의 꼴을 찾는 건 결코 쉽지 않은 문제죠. 이게 상당히 흥미로운 분야입니다. 응용할 수 있는 분야가 상당히 많죠

    예를 들어 주식 가격을 예측한다거나, 스포츠 경기 결과를 예측한다거나 하는 데에도 쓰일 수 있고요

    일반적으로 많이 사용되는 방법은 전문가가 함수의 모양에 대한 개인의 통찰력을 바탕으로 만들어내는건데 아무래도 정말 복잡한 함수인 경우에는 어느 정도 이상의 정확도를 내기가 어렵죠.

    그래서 또 인공신경망 같은 걸 동원하기도 하는데... 이것 역시 일반적인 training 기법만으로는 global optima를 찾기 어렵다는 게 문제입니다.

    제가 예전에 정보올림피아드를 하던 때에 계절학교에서 잠깐 가르침을 얻었던 교수님께서 인공신경망에 유전알고리즘을 적용해서 주식투자 자문회사를 세우셨다던데... 본격 전공지식으로 돈벌기....

    1. 사무엘 2012/07/07 18:10 # M/D Permalink

      그렇군요. 아무래도 실생활에서는 휴리스틱스러운 솔루션이 필요한 경우가 많으니 근사함수의 꼴 자체를 찾는 것도 그런 분야에 속한다는 게 실감이 갑니다.

      계절 학교에서 유명한 교수님의 지도를 받으셨나 보군요. 그분이야 그 분야에서는 워낙 독보적이시니 저도 누군지 알겠습니다. (ㅎㅎ)

  4. ksh 2013/01/08 02:05 # M/D Reply Permalink

    절댓값을 안 쓰는 이유로는, 함수가 하나로 결정나지 않을 수 있기 때문이라고도 들었습니다.

    1. 사무엘 2013/01/09 10:33 # M/D Permalink

      음, 그런 얘기는 저는 처음 듣네요. ^^

Leave a comment

1.

수학에서 원주율 pi와 자연상수 e는 가장 유명하고 친근한 상수임이 틀림없다. 이들은 유리수를 계수로 가지는 대수방정식의 근이 되지 않는 초월수임이 증명되어 있고, 이들의 정의나 다른 특성에 따라 값을 구하는 식이 여럿 존재한다.

pi = 4(1/1 - 1/3 + 1/5 - 1/7 + 1/9 ... )
e = lim (1 + 1/n )^n (n → 무한대)

pi의 저 공식은 정말 이보다 더 쉬울 수 있을까 싶을 정도로 너무 깔끔하고, 저게 도대체 파이와 어떻게 관계가 있을까 하는 생각이 들기도 한다. 사실, 저것은 arctan(tan의 역함수) 함수의 테일러 급수에다가 1을 대입하여 얻은 식이다. 45도일 때 기울기(=탄젠트)가 딱 1이 되니, 저 값은 pi/4가 나오고, 따라서 pi를 구하기 위해 4를 곱한 것이다.

e의 경우, 숫자를 무한대로 띄우는 n승과, 그 지수 연산의 발산 효과를 무효로 만드는 1/n (1에다가는 아무리 큰 지수 연산을 해도 그대로 1..)의 극한이 저렇게 가까워지는 게 신기하기 그지없다.

그러나 위의 두 공식은 둘 모두 n 값이나 항의 개수가 100000이 넘어가도 소숫점 겨우 네댓 자리까지밖에 일치하지 않을 정도로 수렴이 대단히 느린 게 흠이다. 이 방식으로는 소숫점 n째 자리까지 일치하려면 계산량이 n의 지수함수 형태로 증가해야 한다. 알고리즘으로 치면 엄청나게 비효율적인 알고리즘이다.
그래서 실제로 pi나 e의 값을 계산할 때는, 매 회에 좀 더 복잡한 계산이 수행되더라도 적은 횟수로도 더 빠르게 수렴하는 다른 식을 찾아 쓴다.

자연상수 e는 exp(x), 즉, 미분해도 자신과 동일한 함수의 테일러 급수로부터 얻은 식을 이용해 값을 구할 수 있다. 바로 n팩토리얼의 역수의 무한합인데, 직관적일 뿐만 아니라 수렴 속도도 아주 빠르다. 물론 팩토리얼이 숫자를 폭발적으로 키우는 연산이긴 하지만, 그만큼 정확도도 커져서 14!까지만 계산해도 소숫점 8~9자리까지 정확한 값이 나온다. 그래서 이걸로 끝이고 다른 계산법을 찾을 필요가 사실상 없다.

자연상수라는 이름엔  '자연'이라는 단어가 괜히 붙은 게 아니다. 얘는 수학의 입장에서는 특성이 매우 자연스럽고 직관적이고 사랑스럽기까지(!) 한 수이기 때문에, 초월수라는 증명도 상당히 초창기에 이뤄졌다. 리우빌 상수--10진법 기준 n!에 속하는 소숫점 자리만 1이고 나머지는 0인 좀 괴랄한 0.110001000… --처럼 초월수의 존재를 증명하기 위해 일부러 설정된 수가 아닌 수 중에서는 초월수라는 게 증명된 최초의 수가 바로 자연상수이다.

pi는 e보다 더 오묘한 수여서 초월수 증명도 10년 남짓 더 늦게 나왔으며, 더욱 복잡하고 다양한 유도식들이 존재한다. 특히 컴퓨터가 발명되고 원주율 계산이 컴퓨터의 성능을 측정하는 잣대로 통용되기 시작한 뒤부터는 컴퓨터의 입장에서 더욱 계산하기 쉬운 형태의 식이 연구되기 시작했다. 그래도 어느 것이든 e만치 형태가 간단하면서도 빨리 수렴하는 식은 존재하지 않는 것 같다.

비록 컴퓨터 시대에 발견된 식은 아니지만,
sqrt(2) / 2 라는 분수에서 시작하여
sqrt( 2+ sqrt(2) ) / 2와 같은 식으로 분자에다가만 x → sqrt(2 + x)로 변환을 하면서 생성된 수들을 계속 곱하면 2/파이 (파이의 역수의  두 배)에 수렴하는데,
이것도 e만치는 아니지만 계속되는 곱셈과 제곱근 버프 덕분인지 수렴 속도가 빠른 편이다.

2.

1부터 n까지 자연수가 있고 이들의 역수를 나열하면 조화수열이 된다. 조화수열의 무한합은 비록 무지막지하게 느리지만 무한대로 발산한다는 것이 알려져 있다.
한편 n!의 역수의 무한합은 아까 말했듯이 e가 되는데,
그럼 n^2의 역수의 무한합은 무엇이 될까?

거듭제곱의 지수가 1보다 커지는 순간부터 역수의 무한합은 유한한 값으로 수렴하긴 한다. 그러나, 그 수렴값의 특성을 알아내는 건 아주 어려운 일이어서 지금까지도 알려진 게 그리 많지 않다.
n^x의 역수의 무한합을 일반적으로 x에 대한 리만 제타 함수값이라고 한다.

그리고 그 x가 짝수일 때는 놀랍게도 pi와 관련이 있는 값으로 수렴한다는 것이 천재 수학자 오일러에 의해 밝혀졌다. 가령, 2일 때는 이렇다.

1 + 1/4 + 1/9 + 1/16 + 1/25 ... = pi^2 / 6

그러니 이것도 응당 파이를 구하는 데 쓸 수 있는 공식이다.
비록 이것 역시 아까의 1/3 1/5 1/7 공식 만만찮게 수렴 속도가 몹시 느리기 때문에 실용성은 떨어지지만 말이다.

여기서 갑자기 pi가 튀어나오는 것도 신기하지만, 이 수의 진짜 놀라운 면모는 또 다른 곳에 있다.
바로 이 수는 자연수에 존재하는 소수의 분포와 관계가 있다.

1부터 N 사이에 있는 임의의 두 자연수를 뽑았을 때 이것이 서로 소일 확률은 N이 커질수록 바로 저 수, 다시 말해 (pi^2)/6의 역수로 수렴한다! 그 확률은 대략 60.8%이다.

아니, 리만 제타 함수에서 파이가 왜 조건부로 튀어나오며, 게다가 미적분· 해석학하고는 아무 관계가 없는 정수론과 관련된 의미가 왜 이런 데서 발견되는 걸까? 이걸 알아 낸 사람도 오일러이다.

2를 포함해서 리만 제타 함수의 짝수승의 값은 그래도 pi가 얽혀 있으니 초월수라는 건 확실히 인증이다만 홀수승의 값들은 무리수인 것만 알려져 있지 다른 특성은 알려진 바가 없다. 초월수일 게 거의 확실시되고 있긴 하나, 그조차도 정식으로 증명되지는 못했다.

3일 때의 값은 '아페리 상수'라 하여 일부 공학 분야에서도 쓰인다. 이 수가 무리수라는 증명을 1978년에 한 프랑스의 수학자 아페리의 이름을 딴 것이다. 정의대로 각 자연수들을 3승한 뒤 역수를 구해서 더하면 값을 구할 수 있지만, FM 방식은 역시 수렴이 더디기 때문에 훨씬 더 복잡하지만 더 빨리 수렴하는 별도의 급수 전개를 써서 값을 구한다.

그런데 이 값의 역수는 임의의 세 자연수가 서로 소일 확률이라고 한다. 마치 가위바위보에 참여하는 인원이 많아질수록 무승부가 나올 확률이 치솟듯, 세 자연수는 두 자연수일 때보다 서로 소일 확률이 올라가서 그 값은 약 83.1%에 달한다.

작은 범위에서라도 정말 얼추 그렇게 되는지는 프로그램을 짜서 간단히 확인해 볼 수 있다.
1부터 N까지 3중 for 문을 작성해서 모든 숫자 조합에 대해서 최대공약수를 구해서 1이 나오는 경우를 세면 되는데, N이 몇천 정도만 돼도 3중 for 문은 오늘날의 최신 컴퓨터에서도 버벅대는 작업량이다.

3.

그래서 본인, 이 기회에 멀티코어 프로그래밍을 실습해 봤다.
i5 쿼드코어답게 CreateThread 함수로 스레드를 4개 만들어서 뺑뺑이를 돌리는 분량을 인위로 분할한 뒤, 계산 결과를 취합했다. 그랬더니...

809615629/973620600 0.831551 (7753)
809615629/973620600 0.831551 (3448)

코어 하나밖에 못 쓰고 고로 CPU를 최대 25%만 쓰던 싱글스레드 오리지널 코드는 7.8초가 걸린 반면,
스레드를 여러 개 만드는 코드는 CPU를 95% 가까이 점유하면서 제 속도를 내더니, 싱글스레드의 절반이 채 안 되는 3.5초 남짓한 시간 만에 처리를 다 끝내는 걸 알 수 있었다. 실제로 서로 소인 조합이 전체의 83.1%가량을 차지하는 것도 사실이었다.

요즘 세상에 CPU를 70% 이상 한꺼번에 점유하는 프로그램을 내 손으로 직접 만들 일은 없었는데 참 오랜만에 보는 광경이었다. 요즘은 단일 프로그램이 CPU 성능을 제대로 활용하려면 이런 식의 테크닉을 동원해야 한다는 걸 더욱 절실히 느끼게 됐다.

Posted by 사무엘

2012/06/07 08:21 2012/06/07 08:21
, ,
Response
No Trackback , 9 Comments
RSS :
http://moogi.new21.org/tc/rss/response/692

Trackback URL : http://moogi.new21.org/tc/trackback/692

Comments List

  1. 주의사신 2012/06/07 09:46 # M/D Reply Permalink

    1. 어린 시절 3.14159265358979로 이어지는 pi가 어떻게 나오게 되었는가 참 궁금해 했던 적이 있습니다. 선생님들도 그냥 나누니까 된 거야라고 하시는데, 그냥 나눴을 때 나오는 숫자는 사람마다 다르기 때문에 왜 꼭 그 숫자일까가 궁금했습니다.

    나중에 대학까지 가서 테일러 급수 공부하니까 의문이 풀리더군요...

    누군가 답을 정확히 알아도 초등학교 6학년 꼬맹이에게 이해시킬 수 없는 어려운 수준의 답변이었다는 생각을 해 보게 됩니다.


    2. 한 때 댓글 열심히 다는 사람들이 많았는데, 다시 많이 줄었네요.

    1. 사무엘 2012/06/07 11:02 # M/D Permalink

      1. 수학은 알고 보면 정말 재미있고 신기한 면모가 많습니다.
      하지만 겨우 그런 매력 하나만으로 진로를 잡기에는 주변에 우주괴수가 너-_-무 많으며, 이미 평범한 사람의 지능으로 발견될 만한 건 다 발견되고 더 없기 때문에 뭔가 새로운 기여를 하기란 불가능에 가깝습니다.

      2. 저는 오는 사람 안 막고, 가는 사람 안 붙잡습니다. 무플 자체는 전혀 개의치 않고 예정대로 글 올립니다.

      하지만, 다른 수많은 informative한 글들은 아무 말 없이 읽고만 가다가, 어쩌다 가끔 제 소신을 담아서 올리는 정치· 종교 분야 민감한 글에다가만 악플이나 딴지 툭 거는 사람은 제가 좋아할 수가 없죠. 저는 그런 일이나 없으면 좋겠습니다. ^^

    2. 백성 2012/06/09 16:49 # M/D Permalink

      저 같은 마이너는 이해 가능합니다. 아 난 중딩이지.

  2. Lyn 2012/06/07 19:13 # M/D Reply Permalink

    음... 외계어다

    1. 사무엘 2012/06/08 09:43 # M/D Permalink

      저도 외계어가 싫어요. =_=

  3. 왕배덕배 2012/06/08 23:06 # M/D Reply Permalink

    저 리만 제타 2는 sin함수의 인수분해형태 전개에서 2차항 계수비교 한겁니다.

    1. 사무엘 2012/06/09 04:20 # M/D Permalink

      네, 그렇습니다.

  4. 백성 2012/06/09 16:57 # M/D Reply Permalink

    세 자연수가 쌍마다 서로소라면, 오히려 확률이 낮겠지요. 이런 건 처음 알았군요.

    e공식은 테일러전개가 아주 쉬운 것으로 알려져 있지요. 그래서 e^pi×i+1=0 같은 바리에이션도 가능합니다.
    웬만큼 이런 초월수와 관련한 글이 올라왔으면 오일러의 가장 아름다운 식이라 불리우는 이것에 대한 언급도 기대해 볼 만 합니다만...

    1. 사무엘 2012/06/09 22:16 # M/D Permalink

      아뇨, 전체가 서로 소일 확률입니다. OR이 아니라 AND입니다. 예를 들어 (2, 4, 7)은 부분인 2, 4는 서로 소가 아니지만 7때문에 전체의 최대공약수는 1이 되어 서로 소가 되지요. 그러니 확률이 높아질 수밖에 없습니다. 아페리 상수가 신기하죠?

      오일러의 그 등식은 독자들이 이미 다들 알 것 같아서 일부러 언급 안 했습니다. ㅎㅎ

Leave a comment

삼각함수와 회전 변환

사용자 삽입 이미지
요 그림이 고등학교 수학 II에서 배우는 진정한 묘미 중 하나입니다.

(0, 0), (x, 0), (0, y)의 직각삼각형을 원점을 축으로 θ만큼 돌리니까 원점은 그대로고 밑변은 (x cosθ, x sinθ)가 됩니다.
그런데 밑변보다 y만치 위로 떠 있던 점은, 회전 과정에서 가로로는 높이 y의 sin값만치 “감소”(왼쪽으로)하고, 세로로는 cos값만치 증가합니다.

그러니 (x cosθ - y sinθ, x sinθ + y cosθ)의 형태가 되는데, 이는 원래 점인 x, y에 대한 일차변환으로 일반화할 수 있습니다. 결국

(cosθ, -sinθ)
(sinθ,  cosθ)


가 됩니다. “꼬마신 신꼬”라고 외우는 그 유명한 회전변환 행렬입니다.
이걸 모르면 특히 컴퓨터그래픽에서 현란한 벡터 조작이나 3차원 그래픽 같은 건 상상도 할 수 없습니다.

이 행렬식의 값은 1 (임의의 각도의 cos 제곱과 sin 제곱의 합은?), 따라서 이렇게 도형을 일차변환 시키더라도 원래 도형의 넓이를 바꾸지 않는다는 걸 알 수 있습니다. 역행렬은 sin 쪽 부호만 맞바꾸면 됩니다. 기하학적으로, 상식적으로, 역행렬 공식에 맞춰 생각해도 전부 명확합니다.

공통수학에서는 삼각함수란 게 있다는 것, 그리고 한 삼각형의 세 변과 세 각이 주어졌을 때 삼각함수가 이런 특성을 갖는다는 것을 배웁니다. 기하학인지 대수학인지 감을 못 잡는 이 괴상한 함수는 흥미보다는 학생들에게 어마어마한 암기를 강요하면서 악몽 같은 기억으로 남아 있을 것 같습니다.

그러다가 수학 II로 오면서 단순히 삼각형과 관련된 것이 아닌 삼각함수 자체의 특성을 더 깊게 공부하게 됩니다. 이 회전행렬은 삼각함수의 덧셈 정리를 유도시킵니다.
특히, 저 행렬에다가 회전 행렬과 같은 각인 (cosθ, sinθ) 열벡터를 뒤에 곱해 주면 cosθ와 sinθ 값으로부터 cos 2θ, sin 2θ의 값을 얻을 수 있게 되고, 그 값으로는 아예 cos²θ, sin²θ의 값도 구할 수 있게 됩니다.

  cos 2θ = cos²θ - sin²θ,  cos²θ = (cos 2θ + 1)/2
  sin 2θ = 2 cosθ sinθ

공을 공중을 향해 몇 도로 던져야 가장 멀리 날아가는지를 삼각함수를 계수로 하는 이차방정식으로 풀어 보면, 결국 cosθ sinθ 값(곱)을 최대로 하는 θ 값을 구하는 문제로 귀착됩니다. 이는 sin 2θ의 값을 최대화하는 것과 같으므로 θ는 45도임이 명확해집니다.

sin과는 달리 cos은 양 함수의 제곱의 합으로 바뀐다는 점도 흥미롭습니다. 2θ보다 더 일반적인 α와 β의 경우를 생각해 보면 더욱 흥미로운 결과가 나오는데요, 덧셈 대신 두 각의 차이를 나타내는 뺄셈만을 예로 들어 보겠습니다.

  cos(α-β) = cosα cosβ + sinα sinβ
  sin(α-β) = sinα cosβ - cosα sinβ

cos을 보면 이는 정확하게 벡터 내적과 관련이 있음을 알 수 있습니다. x, y 성분인 벡터를 거리와 각도로 바꿔서 표현해 보면, Ax·Bx + Ay·By가 왜 |A||B| cosθ인지가 명확해집니다. 공통수학 때 배운 코사인 제 2법칙과도 이미 관련이 있고요.
cos은 90도일 때 0이 되기 때문에 두 벡터가 기하학적으로 직각인지 판단할 때 유용히 쓰일 수 있습니다. 부호가 갈리는 기점이 직각이죠. 시계에서 3시를 향하고 있는 벡터가 있다면, 5시나 1시를 향하는 벡터와는 양수이고, 7시나 11시 벡터와는 음수가 되는 셈입니다.

그럼 sin은 무슨 관련이 있는 걸까요? sin은 90도가 아닌 0도를 기점으로 부호가 바뀝니다. 3시를 향하는 벡터 기준으로 5시나 7시를 향하는 벡터의 부호가 서로 같고, 1시, 11시 벡터와는 서로 다릅니다.
정보 올림피아드 대비하여 기하 알고리즘 공부할 때, 특히 convex hull 같은 거 구할 때 단골로 등장하는 게 세 점이 시계 방향인지 반시계 방향인지 판단하는 공식인데요, 그게 바로 sin과 관련이 있습니다. Bx·Ay - By·Ax입니다. 이 식은 두 벡터가 일직선상에 있을 때 값이 0이 됩니다.

그러나 cos 계열인 벡터의 내적은 sin과는 달리 3차원 이상에서도 일관되게 구하는 공식이 있고 임의의 차원에서도 의미를 갖는다는 점에서 더욱 의미 깊다고 할 수 있습니다. 시계 방향 여부는 2차원 평면에서만 의미를 가지며, sin과 관련이 있는 벡터의 외적 역시 3차원 공간에서만 정의됩니다.

이렇게 한바탕 수학 II 초· 중반에서 홍역을 치른 삼각함수는 나중에 아예 sin(x)/x의 0 극한을 구하고 삼각함수를 미· 적분함으로써 더욱 해석학적으로 접근하게 됩니다. 고등학교 수학 교육 테크트리에서 맨 마지막으로 지어지는 최고급 건물 내지 유닛은 단연 미적분이라 할 수 있습니다.

Posted by 사무엘

2011/11/02 19:31 2011/11/02 19:31
, , , , ,
Response
No Trackback , 15 Comments
RSS :
http://moogi.new21.org/tc/rss/response/592

Trackback URL : http://moogi.new21.org/tc/trackback/592

Comments List

  1. 김 기윤 2011/11/02 19:59 # M/D Reply Permalink

    최근에 탄막을 프로그래밍하다보니, cos 과 sin 함수하고 정말 친하게 지내게 되었습니다.

    탄막의 경우 원형으로 펼쳐지는 패턴이 엄청나게 많고 그러다보니 삼각함수가 빠질래야 빠질 수가 없게 되더군요.

    경우에 따라서는 p(r, θ) 좌표계를 사용할까 까지 고민까지 할 정도였으니까요.


    ..여담으로 그런식으로 직교좌표와 극좌표에 대해서 고민하고 있던 덕분에, 대학교 미분과 적분 II 과정에서 등장하는 직교좌표, 극좌표, 원주좌표, 구면좌표는 별 어려움 없이 이해할 수 있었습니다.(...)

    1. 사무엘 2011/11/03 04:15 # M/D Permalink

      아아.. 그런 움직임을 일일이 다 코딩으로 구현해 봤다면 정말 대단한 내공을 쌓으셨겠습니다.
      제가 삼각함수를 배운 보람을 가장 확실하게 느낀 건, 두말 할 나위도 없이 3차원 그래픽 시연 프로그램을 만들면서였죠. http://moogi.new21.org/src14.htm 렌더링 부분뿐만 아니라 3차원 프랙탈 나무를 만들 때도 회전 변환 행렬이 쓰입니다.

  2. 특백 2011/11/02 20:01 # M/D Reply Permalink

    수학 글 오랜만입니다! ㄳㄳㄳ

    벡터 하면 일단 처음으로 가장 쉽고 무난하게 적용할 수 있는 게 복소평면이지요.
    일반 좌표평면과는 달리 벡터 자체를 수로 나타낼 수 있고, 절댓값과 각도를 무난하게 사용할 수도 있고.

    근데 복소 벡터의 문제점 중 하나가.. 실수와 허수 외에 3차원으로 적용할 수 있는 다른 수가 과연 존재할까 하는 겁니다. x^3=1을 만족하는 두 허수도 사실 i로 표현가능하고.

    1. 사무엘 2011/11/03 04:15 # M/D Permalink

      재미있는 떡밥 낚으셨음?
      일단 우리의 위대하신 '대수학의 기본 정리'가 있으니, 제곱이 아니라 100제곱을 해서 -1이 되는 수라도 복소수 범위에서 모두 표현이 가능합니다. 제곱해서 -1이 되는 수라는 황당무계한 개념을 하나 상상한 것만으로 인간의 사고 체계가 그 정도로까지 확장된 것이죠.

      다만, 사원수(quaternion)· 8원수 같은 수도 있긴 해요. 공학에서 쓰이는 특정 개념이라든가 기하학적인 의미를 수월하게 표현할 수 있어서 만들어진 수인데, 행렬처럼 교환 법칙이 성립하지 않는 괴상한 존재입니다. 이건 형제도 모를 것 같지는 않습니다만, 4원수를 구성하는 나머지 허수부의 상수는 i^2 = j^2= k^2 = ijk = -1 이라니 흠좀무이죠.

    2. 특백 2011/11/03 11:27 # M/D Permalink

      4원수는 물론 들어보았지요. 처음에는 4차원 표기용이었으나 지금은 3차원 + time 정도로 쓰고 있다고 교재에서 얼핏 들었습니다.
      교환법칙이 성립하지 않는다는 건 큐브에서 x layer, y layer 회전과 y,x회전이 같지 않은 것으로 표현할 수 있겠···· (도움도 안 되는 큐브따위 집어치워)

      KMO 여름학교에서 가장 감명깊게 들었던 게 복소기하입니다. 복소평면에다 좌표축을 대입함으로서(대부분의 문제가 평면기하니까) 계산을 몇 배는 줄여주고 벡터도 모두 그렇게 표시합니다.

      ※sinx/x는 걍 로피탈의 정리 ㄱㄱ

    3. 주의사신 2011/11/03 17:11 # M/D Permalink

      특백에게

      1. sinx/x를 그냥 로피탈의 정리만 이용해서 넘어가지 마시고, 증명을 이해하고, 그 증명을 보지 않고 할 수 있도록 노력하시기 바랍니다. 수학에서 증명은 매우 중요합니다.

      (sinx - 0) / (x - 0) 으로 볼 수도 있기 때문에 이런 사고 방식이 많은 문제를 푸는데 도움이 됬던 것으로 기억합니다.


      2. 로피탈로 안 되는 문제도 많습니다. 로피탈에만 의존하면 로피탈이 안 되는 문제를 풀 수 없습니다. 로피탈의 정리를 쓸 수 있는 조건을 항상 명심하시고, 조금 돌아가는 길이라도 로피탈의 정리 없이 가는 것 역시 연습하시기 바랍니다.

    4. 특백 2011/11/03 22:56 # M/D Permalink

      주의사신님께

      1. 네, 저도 모던한 증명 방법은 알고 있지요. 참고로 전 샌드위치법을 사용합니다.

      2. 저는 걍 넘어가려고 한 적은 꿈에도 하지 않았습니다. 로피탈의 정리가 안 되는 케이스가 많다는 건 숙지하고 있지요. 다만 이 경우는 도움되는 공식 하나가 있다는 것을 알고, 그것을 쓰는 것을 아예 부인할 수는 없겠습니다.

  3. 소범준 2011/11/03 00:00 # M/D Reply Permalink

    아놔~ 이거 작년에 수능본다고 머리 빡씨게 배웠던 거~ 아주 ㄳㄳ 합니다 ^^
    그러고보니 다시 한 번 복습하고 가는 효과가 있네요?^^
    "꼬마신 신꼬"는 얼핏 들은 것 같은데, 그런 정리 때문에 생긴건가요...

    그리고 참고로 제가 배운 교육 과정에서는 이게 수 II에서 나오지 않고, 심화 미적에서 나왔습니다.
    그나마 제 후배들의 교육과정은 또 먹튀~ 수준이겠지만.

    아~ 하긴 1년전의 수능날이 다시 되돌아오는 느낌인 것 같습니다.
    며칠 안 있으면 후배들의 수능날도 있으니..

    1. 사무엘 2011/11/03 04:15 # M/D Permalink

      이제 수능 며칠 안 남았지요.
      이런 어려운 수학 글은 댓글이 하나도 안 달려도 이상할 게 없는데,
      6시간 이내에 철도나 성경 글보다도 댓글이 많이-_- 달린 걸 보면 여기 오는 분들의 전반적인 성향과 적성이 짐작이 가고도 남습니다.
      아무래도, 학교 교육과정이 다루는 내용이다 보니 난이도에 비해 덕-_-력은 그리 높지 않는 컨텐츠여서 그런가 보네요. ㅋㅋㅋㅋ

  4. 주의사신 2011/11/03 17:13 # M/D Reply Permalink

    cos(a - b)를 교과서에는 코사인 제2법칙을 이용해서 증명합니다만, 스승님께서 한 번 미분과 적분 책에 있는 내용들을 벡터의 관점에서 보라 하셨던 기억이 나네요. cos(a-b)가 전형적으로 그런 경우였지요.

    1. 사무엘 2011/11/03 22:46 # M/D Permalink

      “같은 이론이라 해도 이를 다루는 석학들에 따라 시각을 달리 하고 다루는 요령 및 기법을 달리한다는 것은 학문의 희열을 느끼게 해주었으며, 이 희열은 주말 공부를 위한 충분한 에너지원이 되었다.” ( http://systemclub.co.kr/board/bbs/board.php?bo_table=int01 지 만원 박사의 회고록)

      저는 그런 희열을 그다지 느끼지 못한 채 학창 시절을 보내서 아쉽긴 합니다.
      (그래도 학창 시절에 날개셋 1.0 만들었으니 다른 과업은 이뤄냈죠-_-)

  5. 김재주 2011/11/03 18:49 # M/D Reply Permalink

    코사인과 싸인 공식은 외워도 좀 안 쓰다보면 기억이 안 나더군요
    그래서 전 e^ix가 cosx+i*sinx라는걸 이용해서 그때그때..

    1. 사무엘 2011/11/03 22:55 # M/D Permalink

      원문에서 언급되어 있듯, 삼각함수는 공통수학 시절부터 이미 학생들을 무지막지하게 괴롭히는 주범입니다.
      수학 교사나 전공자나 골수 수학 덕후 천재가 아닌 이상, 그걸 어떻게 다 기억하겠습니까. ㅋㅋ

      그나저나 댓글들을 읽어보니, 여기 글을 남기는 분들의 수준에 경이로움까지 느껴집니다. 이 사이트는 글 올리는 사람도 똘끼가 충만하지만, 오는 사람들도 보-_-통은 아닌 것 같습니다. ^^;;

  6. 다물 2011/11/04 17:04 # M/D Reply Permalink

    고1때까지 어느정도 하던 수학을 고2때 미적분 공식 외우기 귀찮다고 하다가 암울로 떨어졌죠,
    그리고 대학교 가 보니 쓰이는건 미적분밖에 없더라는

    무조건 외우라고만 하지 말고 왜 필요한지 그리고 어디에 쓰이는지 알려줬다면 지금처럼은 안했을거 같은데 ㅜ.ㅜ

    1. 사무엘 2011/11/06 00:57 # M/D Permalink

      그게 모든 과목에서 주입식 교육의 폐단이기도 합니다. =_=

Leave a comment

다음은 고등학교 수준에서 다뤄졌을 법한 전형적인 확률· 조합 문제이다.

N명의 사람이 각자 모자를 쓰고 왔는데 이 모자를 다 벗어서 모아놓았다. 잠시 뒤 이 모자를 무작위로 사람들이 찾아 쓸 때, 모든 사람이 한 명도 예외 없이 남의 모자를 쓰게 될 확률은?


수가 커질수록 소수를 발견하기 어려워지는 것만큼이나 저 확률은 0으로 수렴이라도 하는 걸까? 답부터 말하자면 그렇지 않다. N이 커질수록 그 확률은 1/e 에 수렴한다.
즉, 대략 37% 정도 된다는 뜻이고 이는 3지선다 문제를 깬또-_-로 맞힐 확률과 고만고만함을 의미한다. (깬또는 도대체 어느 나라 어원의 말일까? 순우리말이라면 흠좀무) 하필 자연대수와 관계가 있는 확률로 수렴한다는 것도 흥미로운 점.

신기하지 않은가? 이 정도면 여러분이 감으로 예상한 확률보다 높은 걸까 낮은 걸까? 수학이 좋은 점은, 인간의 감만으로는 아리까리한 문제에 대해서 명확하게 이렇게 될 수밖에 없다는 답을 제시한다는 것이다. 영적인 안목만 없을 뿐이지 추상적인 세계에서는 성경만큼이나 100% 절대무오한 진리를 담고 있는 학문이 바로 수학이다.

N개의 모자를 늘어놓을 수 있는 모든 가짓수는 잘 알다시피 N! (팩토리얼)이다.
N=2인 경우라면 1 2가 2 1로 뒤바뀌는 경우밖에 없으므로 1/2 = 50%
N=3이면 6가지 조합 중에 2 3 1, 3 1 2가 존재하므로 2/6 ≒ 33.3%
N=4는 잘 세어 보면 9가지 경우가 존재하여 9/24 = 37.5%
N=5일 때는 44가지 경우가 있다. 44/120 ≒ 36.7%
그리고 쭉쭉쭉...;;

그런데 이 가짓수에서 재미있는 패턴이 발견된다.
가짓수를 나타내는 함수를 f(x)라고 정의하면, 일단 f(x)의 값은 x-1의 배수임이 반드시 보장된다.
f(5)는 4의 배수인 11, f(4)는 3의 배수인 9인 식이다.
실제로 가짓수를 세어 보면, 왜 그렇게 되는지 알 수 있다.

이 f(x)를 구하는 방법은 점화식으로 의외로 간단하게 유도된다.
패턴을 잘 관찰해 보면 f(1)=0, f(2)=1 이후로 f(x) = (x-1)*(f(x-1)+f(x-2))가 된다.

f(4) = 3*(1+2) = 9
f(5) = 4*(2+9) = 44
f(6) = 5*(9+44) = 265

숫자의 증가의 폭이 팩토리얼과 동급으로 폭발적인 건 마찬가지이기 때문에, 그 비율의 극한이 0이나 무한대가 아니라 상수로 나온다.
f(x) = f(x-1)+f(x-2)인 피보나치 수열 점화식에다가 (x-1)을 곱한 것밖에 없으나, 점화식의 특성상 그 여파는 쌓이고 쌓이면서 훨씬 더 커진다. 피보나치 수열의 일반항은 2^n 같은 지수함수급인 반면 저건 팩토리얼급..;; 팩토리얼 자체가 f(x) = x*f(x-1)로, 점화식에 덧셈도 모자라서 곱셈이 등장하니까 말이다.

본인은 1/e라고 하면 x^x 함수를 최소로 만드는 값이기도 하다는 것을 예전부터 알고 있었다.
x^x는 a^x 같은 지수함수는 말할 것도 없고 심지어 팩토리얼보다도 더욱 폭발적으로 증가하는 괴랄한 함수이다.
이 함수는 양변에 로그를 씌워서 미분하는데, 도함수는 x^x * (ln x + 1)이 된다.

양수 x에 대해서 x^x 자체는 0이 결코 될 수가 없다(x가 0에 가까워져도 함수값은 1에 수렴). 하지만 x에다 1/e를 집어넣으면 ln x + 1이  ln 1 - ln e + 1 = 0-1+1 = 0이 된다. 고로 도함수의 값은 0. 이때가 최소이며, 그 최소값은 e^(-1/e)에 해당하는 약 0.69 정도.
e 자체뿐만이 아니라 e의 역수도 이런 의미를 지닌다는 걸 알 수 있다. 아래 그림을 참고하라.

사용자 삽입 이미지

대표적인 공돌이 유머인 미분 귀신 적분 귀신에 잘 묘사되어 있듯, 다항함수는 유한 번 미분하면 0이 되어 버린다. 그러나 초월함수들은 미분을 거듭해도 전혀 줄어들지 않으며 오히려 쓸데없는 계수들이 덧붙거나(지수함수), 형태만 바꾸면서 뱅글뱅글 순환한다(삼각함수).

그런데 그 정점에 있는 것이 바로 e^x이다. 미분해도 적분해도 형태가 전혀 변하지 않는다. ^^;;;
이 녀석은 테일러 급수로 다항식 전개를 해 보면.. 진짜 그렇게 될 수밖에 없는 형태임을 알 수 있다.
테일러 급수 자체가, 특정 지점에서 주어진 함수와 함수값과 n차까지 도함수가 일치하는 다항함수를 구하는 것이니 원..

1 + x + x^2/2 + x^3/6 + x^4/4! + x^5/5! ....

이게 끝없이 반복되니까 미분하면 왼쪽으로 shift, 적분하면 오른쪽으로 shift.. -_-;;
x에다가 1을 집어넣으면 결국 자연대수 e는 1부터 시작해 팩토리얼들의 역수의 합으로 2.71828...로 시작하는 그 값이 자연스럽게 유도된다. 수학에서 원주율 다음으로 유명하고 중요한 상수이다.
2.718281828 ..1828이 잠시 반복되는 덕분에 파이보다 외우기 쉽다.

우리는 학교 수학 시간에 자연상수에 대해서 (1+ 1/n)^n의 n 무한대 극한값이라고 처음으로 배운다. 이게 e로 수렴한다는 것도 무척 재미있는 사실이긴 하나, 저 식은 수렴 속도가 매우 느려서 비실용적이다. n=1000이 돼도 아직 2.716이고 2.718에도 도달 안 해 있다.
그 반면 팩토리얼 역수의 합은 직관적이고 수렴 속도도 꽤 빠른 편이어서 좋다. 6!까지 갈 때 이미 2.718에 도달하고 9!에서 벌써 소숫점 여섯째 자리까지 일치하기 시작한다. 굿..;;

범위가 0부터 1까지인 n차원 공간상의 점 P(a1, a2, a3, ... a_n)이 있을 때, 0<a1<a2<a3<...<a_n을 만족하는 영역이 차지하는 부피(?) 내지 product는 어떻게 될까? 1/n!이다. 2차원일 때는 한 변의 길이가 1인 삼각형의 넓이가 되므로 1/2, 3차원일 때는 삼각뿔의 부피가 되므로 거기에다가 1/3을 또 곱하면 1/6이 되고, 차원이 그보다 올라가도 적분을 거듭하면 그런 식으로 값이 더욱 작아진다는 걸 알 수 있다.

미분이나 적분을 하면 항의 차수가 1 늘거나 감소하는 대신에 원래 갖고 있던 계수가 곱해지거나 나눠지는 만큼, 이 과정을 일반화하면 팩토리얼 연산도 태생적으로 연관이 되지 않을 수 없게 되는 것 같다. 팩토리얼은 확률· 조합 같은 이산수학 영역뿐만이 아니라 해석학에서도 중요한 의미를 지니는 연산인 셈이다.
아울러, -1승이라 할 수 있는 1/x만 적분하면 ln x라는 완전히 다른 함수가 된다는 것도 아주 흥미로운 점이 아닐 수 없다.

Posted by 사무엘

2011/01/06 12:23 2011/01/06 12:23
, ,
Response
No Trackback , 10 Comments
RSS :
http://moogi.new21.org/tc/rss/response/445

Trackback URL : http://moogi.new21.org/tc/trackback/445

Comments List

  1. 김 기윤 2011/01/06 13:48 # M/D Reply Permalink

    주어진 문제가 1/e 에 수렴하는 것 재밌네요. 뭐랄까, 0에 수렴할줄 알았는데.

    그 밖에 (게임 등에서..) 99% 의 성공확률을 가지는 어느 행동이 있는데, 이걸 계속 하다보면 어째 이 성공확률보다도 실패를 더 많이하는 것 같이 느껴질 때가 있습니다. 그런데 이걸 다시 99%를 N번 시행할때 M번 실패할 확률..이란 식으로 다시 계산해 보면 납득이 가능 수치가 되더군요.

    역시, 수학은 계산하면 답이 나옵니다. (..)


    그 외에 피보나치 수열 하니까 생각났는데, 이전에 알고리즘 문제로 재미있는 문제를 본 적이 있습니다.
    어떠한 수열이 있는데 0과 1로만 이루어져있고, 1은 연속해서 등장하지 않습니다. 그리고 길이가 작은게 앞에 옵니다. 같은 길이라면 오름차순입니다.
    1 ->0
    2 ->1
    3 ->100
    4 ->101
    5 ->1000
    6 ->1001
    7 ->1010
    8 ->10000
    9 ->10001
    10->10010
    11->10100
    12->10101
    13->100000
    ... (후략)
    이런 수열이 있을때 수열의 n번째 원소는 무엇인지 돌려주는 프로그램을 작성하시오.
    하는 문제였는데, 피보나치와 연계해서 풀면 금방 풀립니다. ㄲㄲㄲ 재밌는 문제더군요!

    1. 사무엘 2011/01/06 18:43 # M/D Permalink

      으하... 오늘 가히 필 받으셨나 보군요.
      작정하고 이곳 과월호 글들 다 읽어보신 듯?? ㅋㅋㅋㅋㅋ

      언뜻 보기에 모든 사람이 다 틀린다고 하니까 0에 가까워질 것 같은데, 이 문제는 그렇지 않습니다.
      신기한 면모이죠.

  2. 김재주 2011/01/08 00:45 # M/D Reply Permalink

    1이 두 번 반복되지 않고 0과 1만으로 이루어졌다라...

    3번째 수는 100이 아니라 10이 되어야 하지 않을까요

  3. 사무엘 2011/03/16 21:17 # M/D Reply Permalink

    예전에 썼던 글에다가 오랜만에 첨언한다.
    확률 1/n의 사건이라고 해서 n번의 시도 만에 반드시 일어나리라는 보장은 없다.
    n번의 시행 후에도 확률 1/n의 사건이 전혀 일어나지 못할 확률 역시, n이 커지면 1/e로 수렴한다. 무려 37%나 된다는 뜻이다. 저렇게 n명의 사람이 모두 전혀 다른 모자를 쓰고 있을 확률과 같은 차원이라는 뜻 되겠다.
    뭔가 확률의 확률이라고나 할까? 이 정도면 e는 확률과 조합 분야에서도 수학적으로 정말 의미심장한 수가 아닐 수 없다.

  4. 인민 2011/07/16 12:33 # M/D Reply Permalink

    테일러전개는 가히 놀라운 결과이죠. e^x를 그대로 말짱 e^x가 되는 경우가 이상해서 여러번 검색해서 나온 결과.
    “e^x가 쓰러지지 않아”

    lim n->∞ 1-{(n-1)/n}ⁿ가 1/e에 수렴하긴 하네요.
    사실 미분 테크닉을 쓰다가 자연로그 덕분에 꽤 e를 많이 보는 것일 수 있죠(미분해서 1/x가 나오는 함수는 ln x)

    것보다 점화식 f(x)=(x-1){f(x-1)+f(x-2)} 일반형으로 나타내 보신 분?

    1. 사무엘 2011/07/17 01:39 # M/D Permalink

      점화식의 일반항을 구하는 건 일반적으로 굉장히 어려운 일입니다.
      피보나치 수열만 해도 딱 떨어지는 게 있는 특수한 케이스이기 때문에 이차방정식의 형태로 바꿔서 일반항을 구할 수 있는 것이고요.
      문제의 점화식은 수학 패키지로 돌려 봐도 답이 안 나오고, 깔끔하게 일반항을 못 구하는 형태인 것 같습니다. ㄲㄲ

      말씀하신 극한은 미적분학에서 처음 배우는 e의 극한값 식을 형태만 바꾼 것입니다. 일반적으로 ((n+p)/n)^n의 n 무한대 극한은 e^p가 되지요.

      그런데 인민 님, 중학생이라고 하시지 않았나요? 덜덜;;
      님 블로그 링크를 여기에도 추가했습니다. ^^

    2. 인민 2011/07/17 10:21 # M/D Permalink

      미적분 가지고 미적거리는 수준일 뿐인데요 뭐
      것보다 위의 “그”점화식에서 우변을 n!으로 나누면 일반항 구할 수 있지 ··· 않을까요?(라고 쓰고 않을까나? 라고 읽게 됩니다. 조심)

      (통신강좌에서 점화식/꽤 골치아픈 식을 함수로 주고 생성함수를 구하게 시킨 다음에 테일러로 계수를 구해서 함수를 구한 것이 있었는데 테크닉은 너무 어려워서 시도해보지 못했음)

  5. 범쥬이 2011/08/03 11:00 # M/D Reply Permalink

    역시나 수학은 바바박!!-_-;한 공식들 때문에 지겹기도 하지만
    무한을 다루는 학문이라서 그런지 흥미는 유발됩니다.ㅎ

    좋은글 감사드려요. 샬롬!^^

    (근데.. 김 형제님은 대체 못하시는게 뭐에요??^^; 엄청 재밋으시네유~~^^;;)

    1. 사무엘 2011/08/03 11:27 # M/D Permalink

      이 블로그가 다루고 있지 않은 다른 모든 주제에 대해서는 저는 완전 젬병이고 못하는 것 투성이입니다. 가령, 연애라든가.. ㅋㅋㅋㅋㅋ
      그리고 사실은 다루고 있는 주제라 하더라도 저보다 고수는 세상에 많죠. ㄲㄲㄲㄲㄲ

  6. 소범준 2011/11/21 16:09 # M/D Reply Permalink

    첨언으로, 제 폰 계산기로 글 마지막에 있는 자연대수 e를 구하는 일반적인 공식((1+1/n)^n)을 이용하여 n이 무엇일 때 대략값인 2.71828에 수렴하는지 직접 두드려가며 살펴보았습니다.(방금 전) 그 결과, n=195000과 n=200000 사이에서 처음으로 이 값에 수렴하는 것으로 드러났고,
    더 자세히 탐구해보니 n=198900과 n=199200 사이의 어떤 값에서 처음으로 이 값이 등장하는 것을 발견했습니다. ㅎㅎ;;

Leave a comment

수학, 그리고 수학의 정석

최 불암이 학교에서 <수학의 정석> 책을 주워 왔다.
그는 책을 주인에게 찾아 주려고 교내에서 방송을 했다. "수학의 정석 책을 어디어디에서 습득하였으니 잃어버리신 분은 와서 찾아가시기 바랍니다." (설정상 최 불암은 교사였던 듯)
그런데 하루를 기다렸는데도 찾아가는 사람이 없었다. 그는 다시 방송을 했다. "책에 이름이 적혀 있습니다. 주인이 누군지 아니 빨리 찾아가세요."
그래도 찾아가는 사람이 없어서 최 불암은 그 이튿날, 마이크를 대고 냅다 소리를 질렀다.
"야, 홍 성대! 너 책 빨리 안 찾아갈 거야?"

.
.

본인은 고등학교에 진학해서 <수학의 정석> 실물을 접하기 전에, 초딩 시절 이 개그를 통해서 그 이름도 유명한 홍 성대 씨에 대해서 존함을 듣게 됐다. 삼류만화 패밀리에서는 그가 정석교 교주로 묘사된 바 있다. "싸인과 코싸인과 탄젠트의 이름으로 비나이다. 로~그~"

사용자 삽입 이미지

이... 인수분해..!!
대충 저런 만화 되시겠다. ㄲㄲ 출처는 작도닷넷의 삼류만화 아카이브.

홍 씨는 서울대 수학과 재학 시절이던 무려 1960년대 중반에 <수학의 정석>을 집필하여, 본인의 지금 나이 때 이미 백만장자가 되었다. 수학 과외를 뛰다가 자기가 직접 책을 지어 보면 어떨까 하는 생각을 하게 됐다고 한다.

서울대 수학과라는 것만으로도 비상한 머리의 소유자인 데다, 그 나이에 벌써 떼돈까지 벌었으니 공부 더 계속할 필요가 없었으리라. ㅜ.ㅜ 30도 안 된 나이에 수학 교재를 집필할 생각을 했던 것에 대해, 그때 자기는 정말 여간 똘끼가 충만한 상태가 아니었던 것 같다고 그는 그 당시를 회상한다고 한다.

<수학의 정석>은 최소한 우리나라에서는 성경 다음으로 많이 팔린 책이 돼 있다.
워낙 크게 성공한지라 이분은 1981년에 전주에 상산 고등학교를 설립하고, 나중엔 모교인 서울대에다가도 건물까지 한 채 지어 기증했다. 정석의 힘.. ㄷㄷㄷ;;

슬하에 딸이 있다. 따님은 서울대 수학과 박사를 마친 후 고등 과학원 연구원을 거쳐 서울대 수학과 교수가 되었다. =_=;; 물론 부친이 누군지 모르는 상태에서 채용된 거라는 게 서울대 측의 설명이다.
서울대 수학과 박사 -> 고등 과학원 -> 교수 하니까 생각나는데, 이건 퍼즐 관련 저술과 온라인 활동으로 우리에게 친숙한 경남대 박 부성 교수도 동일하게 거친 진로이다. 가히 브레인들..;;

아울러, 따님의 사위는 서울대 수학과 석사 출신이니, 이 정도면 그야말로 뼛속까지 수학 덕후 가문. 저런 분들에 비하면, 코레일 기관사 철덕 커플은 아주 평범한 정상인이고 양반일 것이다..
수학자라고 해서 설마 진짜로 "탄젠트의 이름으로 비나이다 로그"라고 기도를 할-_- 리는 없겠지만, 그들이 어떤 점에서 덕후인지에 대해서는 아래의 유명한 조크에 단적으로 설명되어 있다.

천문학자와 물리학자, 그리고 수학자가 스코틀랜드에서 휴가를 보내고 있었다.
그들이 기차를 타고 여행을 하던 중 들판에서 풀을 뜯고 있는 검은 양 한 마리를 보았다. 그러자 천문학자가 말했다.
"그것 참 신기하군.  스코틀랜드 양들은 죄다 검은색이잖아?"
물리학자가 천문학자의 말을 반박했다.
"그게 아니야.  스코틀랜드산 양들 중에서 일부만이 검은색이라 해야지."
이들의 말이 한심하다는 듯, 수학자는 하늘을 잠시 쳐다본 뒤 조용히 입을 열었다.

"자네들은 너무 성급한 판단을 내린 거야. 스코틀랜드에는 적어도 몸의 한쪽 면 이상의 면적에 검은 털이 나 있는 양이 적어도 한 마리 이상 방목되고 있는 들판이 적어도 하나 이상 존재한다고 해야 말이 되는 거라구!"


그만큼 수학을 하는 사람들은 뭐든지 정확하게 있는 그대로만 표현하는 엄밀한 용어를 쓰는 걸 좋아한다는 뜻이다. 사고 체계가 그런 쪽으로 철저히 단련되어 있기 때문에, 모든 진술을 명제라는 형태로 받아들이고 for all, given, such that, at least 같은 표현과, lemma, definition, theorem 같은 용어를 좋아한다. 저건 굳이 수학 전공이 아니더라도, 이공계 출신이기만 해도 충분히 수긍이 갈 것이다. 미분 귀신, 적분 귀신 개그류와 더불어..;; ㄲㄲㄲ
설마 홍 성대 씨가 자녀 가정 교육도 저런 식으로 시켰을까?? ^^;;

영어는 교육 과정이 유행을 많이 탄다. 단적인 예로 성문 종합 영어는 오늘날에 옛날 정도의 인지도를 유지하지 못한다. 그러나 수학은 정말 왕도가 없고 절대불변 보편적인 진리를 다룬다. 성경과 비교했을 때, 수학은 선악이라든가 영적인 가치가 없는 진리라는 게 다를 뿐이다. 그래서 정석이 40년 전이나 지금이나 사랑받는 게 아닐까 한다. 수학에는 다른 과목들이 넘볼 수 없는 '포스'가 있다.

그래서일까? 각종 매체에서 학교의 수학 선생은 인간미가 없고 뭔가 정상이 아닌 무지막지한 이미지-_-로 묘사되어 있다.
한 10년 전 PC통신 시절에 히트 쳤던 박 상욱 씨의 <구타교실>1)이라는 소설을 보면, 인간 백정 구타 기계인 똥행패 선생은 체육 선생이 아니며 하다못해 과학 선생도 아니다. 수학 선생으로 설정되어 있다. 아래의 그림은 이 소설을 만화화한 <구타닷컴>2)의 표지.

사용자 삽입 이미지

똥행패가 어떤 인간인가? 빠따를 때리며 손에 전해져 오는 감촉만으로도 바지 원단의 재질은 물론 엉덩이의 두께까지 파악해 내는 구타 컴퓨터가 아닌가. ㄲㄲㄲㄲ (소설 중에서)


영화 <말죽거리 잔혹사>에서도 주인공의 담임 선생이 왜 수학 선생으로 설정되었겠는지 잘 생각해 보기 바란다.

수학과는 달리, 삐딱 나간 제자를 교화하고 헌신과 사랑으로 아이들을 가르치는 선생은 내가 아는 한 언제나 음악 선생이다. 도덕 선생도 아님. 영화 <사운드 오브 뮤직>, <코러스>, <홀랜드 오퍼스>가 좋은 예이며, <구타교실>에서도 그나마 정상인인 여선생은 음악 선생으로 나온다. ^^;; 이렇듯 각 과목에는 인간이 보편적으로 느끼는 색깔이 존재한다는 결론이 도출된다.

요즘 교사 임용 시험 경쟁률이 살인적이라는 건 주지의 사실이다. 영어는 워낙 잘 하는 인간들이 너무 많으며, 암기 위주인 과목들도 다들 달달 외우면서 피튀기게 경쟁하다 보니.. 특히  TO가 적은 마이너 과목들은 실수로 한두 개 틀리면 바로 떨어지고, 실력이 아니라 국가 유공자 가산점 빨로 당락이 결정될 정도라고 한다. 직업으로 치면 마치 식당이나 택시 기사처럼, 진입 장벽도 낮고 망하기도 쉬운 그런 직종 같다.

그러나 수학은? TO가 많으나 과목 자체가 워낙 어렵고 진입 장벽이 높기 때문에, 까놓고 말하자면 100점 만점에 6, 70점만 넘어도 안정된 합격권이라고 들었다. 정말로 실력으로 진검 승부가 가능한 순수 머리 싸움 과목이다. 그런데 국제 수학 올림피아드 입상자라고 해도 우리나라 고등학교 수학 미적분을 술술 풀어내는 건 아니니, 이것도 흥미로운 면모가 아닐 수 없다. 당연히 둘은 서로 다루는 분야가 완전히 다르기 때문이다. 정올 경시와 공모가 다른 것만큼이나 서로 다를 것이다.

지금 정석 책 다시 꺼내서 공부하라고 하면 절대 못 할 것 같다. 홍 성대 같은 분 완전 부럽.. ㅜㅜ 하지만 매체에서 수학과는 정반대의 이미지로 묘사되어 있는 음악도, 근간을 이루는 이론을 파고들어 보면 수학적으로 굉장히 재미있는 요소가 많다는 게 역설이라 하겠다. Looking for you 분석하면서 이런 거 많이 생각해 봤는데... 먼 미래에 기회가 되면 글로 또 다루도록 하겠다. ㅋㅋㅋ

Notes:
1) 본인의 고등학교 시절에 재미를 북돋웠던 PC 통신 소설이 둘 있는데 하나는 앞서 언급한 <구타교실>이고 또 하나는 <환상의 테란>. 후자의 경우는 스타 1.08 패치가 나오면서 일종의 현실화까지 되었다. 그런데, 프로게이머 중에 변 형태라는 선수가 등장할 줄이야! (똥행패의 본명)

2) 교실이 닷컴으로 바뀐 특별한 이유는 없다. 그냥 그 당시가 한창 닷컴 기업 vs 굴뚝 기업 운운하면서 개나 소나 닷컴 붙이는 게 유행이던 시절이어서... ㅋㅋ

Posted by 사무엘

2010/12/03 08:52 2010/12/03 08:52
, , , , ,
Response
No Trackback , 18 Comments
RSS :
http://moogi.new21.org/tc/rss/response/423

Trackback URL : http://moogi.new21.org/tc/trackback/423

Comments List

  1. 주의사신 2010/12/03 09:48 # M/D Reply Permalink

    1. 정석 서문에 보면 딸 얘기와 사위 얘기가 나옵니다.

    많은 학생들이 자식 자랑이 심하다고 그 페이지만 버린다는 전설이 있답니다...


    2. 정석은 "이를테면"이라는 말이 정말 많이 나오는 책으로도 유명합니다.


    3. 재수 시절 수학이 뭔지, 학문이 뭔지 저에게 가르쳐주신 강필 선생님은 정석을 엄청 싫어하시더군요...

    "xxx하면, yyy해라"가 많아서 그렇다고 하십니다.

    교과서에 있는 내용만을 가지고, 모든 수능 문제를 풀어 내시는 분이시니까요...

    그 분께 배우고 나니, 지금도 수학 문제 풀다 보면 이런 얘기를 합니다.

    "교과서의 기본이잖아!", "발견적 추론하면 되지!", "연산 능력이 점수를 좌우한다!"

    http://www.dahora.co.kr 을 가시면 만나보실 수 있습니다.

    올해 수리 영역을 학생들은 어렵게 풀었는데, 홀로 이런 이야기를 하십니다.

    "평가원은 쉽게 낸다고 열심히 쉽게 낸 거야. 그런데 학생들이 다같이 안 풀어서 이런 일이 벌어졌을 뿐. 그러면 도대체 왜 이런 일이 반복되는지를 밝혀야 해"

    1. 저... 2010/12/03 15:26 # M/D Permalink

      "교과서의 기본이잖아!", "발견적 추론하면 되지!", "연산 능력이 점수를 좌우한다!"

      이 문단과

      "평가원은 쉽게 낸다고 열심히 쉽게 낸 거야. 그런데 학생들이 다같이 안 풀어서 이런 일이 벌어졌을 뿐. 그러면 도대체 왜 이런 일이 반복되는지를 밝혀야 해"

      이 문단.... 잘 이해가 안 가요... 설명 좀...ㅠㅜ

    2. 주의사신 2010/12/03 20:34 # M/D Permalink

      1. 교과서의 기본 :

      저는 수능 수리 영역 공부 이후로 안 풀리는 문제가 있을 때는 항상 교과서에서 어떻게 이야기했던가 떠올리곤 합니다. 교과서를 다시 한 번 읽어 보기도 하고요. 그렇게 하면 80% 이상의 문제는 다 풀리는 것 같습니다.

      2. 발견적 추론 :

      교육과정평가원 수능 출제 매뉴얼의 용어입니다. 새로운 형식의 문제를 만났을 때, 나열하기, 관찰하기 등등을 통해서(직접 문제를 조금 변형시켜 보면서) 문제가 묻고자 하는 것과 문제 해결의 핵심을 찾아내는 과정을 말합니다. 예를 들자면 a n+1 = 2 * a n + 2의 경우 a1부터 하나씩 넣어가면서 이게 어떤 규칙을 갖는가 보는 것입니다.

      3. 연산 능력이 점수를 좌우한다. :

      말 그대로입니다. 계산을 못하면 수학 점수가 잘 안나옵니다. 그렇기 때문에 열심히 계산을 해야 하고, 공간도형 문제 같은 경우에는 계산만 가지고도 풀 수 있어야 합니다.

      4.
      수능과 관련해서 평가원은 항상 "쉽게 낸다"를 강조합니다. 그런데 점수를 보면 쉽게 낸 것 같지 않은 느낌을 줍니다.
      그럼 평가원은 거짓말을 한 걸까요?
      아닙니다. 그곳은 그런 거짓말을 할 곳이 아닙니다. 진짜로 쉽게 낸다고 냈는데, 이상하게 학생들이 못 푸는 것입니다.(평가원이 학생들의 실력을 지나치게 높게 보고 있는 것일지도 모릅니다.)
      평가원이 쉽게 냈다는 것도 사실이고, 학생들이 쉽게 냈다는 그 쉬운 문제를 쉽게 못 풀고 어렵게 생각한다는 것도 사실입니다. 지금 그 선생님께서는 도대체 왜 이런 일이 반복이 되며, 이 반복의 고리를 끊으려면 어떻게 해야하는지 고민중이십니다.
      http://dahora.co.kr/bbs/board.php?bo_table=rest_san&wr_id=5893 에 그런 고민이 묻어나 있습니다.

  2. 김기윤 2010/12/03 11:18 # M/D Reply Permalink

    1. 저는 어떤 책이든 서문이 있으면 읽는 편입니다. 물론 주의사신님이 언급하신 자식 자랑(....) 도 물론 봤구요.. (...) 대단한 집안이다, 생각했죠 -.-

    2. 수학 선생은 무지막지하다.. 라고 하니 떠오르는건 정글고.. (거기도 무지막지합니다..)

    3. 지금 정석 책 꺼내서 다시 공부하라 해도.... 문제는 제쪽 분야(..)는 이미 미분/적분과 연관이 깊어서 금방금방 할 듯 싶습니다. ...... 그런데 고등학생때는 분명 미적/확통/이산수학 중 택1이었는데 대학교 오니까 셋 다 해야 하고, 셋 다 써먹어야 하는 이 상황은.. (....)

  3. 사무엘 2010/12/03 15:41 # M/D Reply Permalink

    주의사신: 맞습니다. 딸과 사위 자랑은 7차 교육 과정 개정판의 서문에서 처음으로 등장한 걸로 유명하죠.
    정석이 워낙 지존의 책인 만큼, 수학에 대해 자신만의 개성과 주관이 있는 사람들 사이에서는 호불호도 분명하게 갈리는 듯합니다.

    김기윤: 원래 컴퓨터가 연속을 표현하지 못하는 기계이다 보니, 전산학은 미적분 해석학 쪽보다는 이산수학, 확률, 통계 쪽과 더 친하지요. 하지만 몰두하시는 관심 분야가 물리 시뮬레이션 쪽이라면 가히 모든 분야가 필요합니다. ㅋㅋ
    정글고 보충 설명은 감사합니다. ^^;;

  4. spartan 2010/12/04 02:25 # M/D Reply Permalink

    브레인과 덕후는 불가분의 관계...?
    하긴 세상은 뭐든지 결과로만 말하니까요.

    실패라도 하면 어쩌려고 그럽니까?
    - 성공하면 어쩌실거요?

    단적으로 보여주는 예가 아닐지.
    아 그 CF BGM 정말 대박이던데. 언제 다운이라도 받아놔야겠습니다

  5. 김재주 2010/12/04 04:43 # M/D Reply Permalink

    그 환상의 테란 작자분은 mbc게임이던가.. 아무튼 게임방송 작가를 맡아 일하시다가 그만두고 불멸의 게이머라는 소설을 쓰셨습니다.

    pgr21.com 연재 게시판에서 검색하면 바로 나옵니다. 그리 오래되지 않았죠.

  6. 사무엘 2010/12/04 23:22 # M/D Reply Permalink

    spartan: 머리도 좋은 데다가 공부를 즐기는 사람이 있다면 일반인들이 도저히 당해 내지 못하겠죠.

    김재주: 오홋, 그분이 또 다른 작품도 저술하셨군요. 좋은 정보 고맙습니다. ^^

  7. 김재주 2010/12/06 02:22 # M/D Reply Permalink

    환상의 테란을 재미있게 보셨다면 필견하시기 바랍니다.

    작가의 필력이 지난 세월동안 상당히 많이 좋아져서
    너무 유치하지도 않고 뭐 생각할 만한 점들도 많고..

    1. 사무엘 2010/12/06 13:13 # M/D Permalink

      앞부분 이미 좀 봤는데.. 벌써부터 흥미진진해 보이네요. ^^;;

  8. 김재주 2010/12/06 19:08 # M/D Reply Permalink

    pgr21버전을 다시 봤는데 이 사이트가 서버이전을 하면서 각 화의 중간에 내용이 짤리는군요. 워낙 길기도 하니;;

    여기서 보시는 게 좋겠습니다

    http://gallog.dcinside.com/iiireturn

  9. 인민 2011/08/28 20:26 # M/D Reply Permalink

    1. 학교에서 이거(정석교 만화) 가르쳐 줬더니 전부 뿜었음 ㄲㄲ

    2. 김기윤님이 앞에서 설명하셨는데 정글고등학교(지금은 끝나 버린) 에서도 수학선생은 참치회를 준비하는 자상한 선생님(?)

    3. '검은 털' 부분에 대해서는 '검은 털'이 정의가 되어 있지 않으므로 패스.
    그리고 솔직히 말이 너무 많아지는데... 스코틀랜드에는 적어도 한 쪽 면에 검은색(정의를 했다고 가정) 털이 나 있는 양이 적어도 한 마리 존재한다고만 하면 끝나지 않나요?

    4. IMO는 미적분까지 대놓고 출제를 하게 되면 머리가 너무 아파지겠죠. 그래서 실제로 미적분을 대놓고 씀에도 불구하고 '미적분은 출제 안함' 이라고 해 놓은 것이고요. 그러나 애초에 저는 수준을 딱 정해놓고 그 수준만큼 끌어올리지 않으면 도태당하는 Math Olympiad 부류를 별로 좋아하지는 않네요.

    1. 사무엘 2011/08/28 20:45 # M/D Permalink

      삼류만화는 지금으로부터 거의 9~10년 전에 유행하던 것이죠. 인민 님 세대는 모를 수도 있겠네요. ㅋㅋㅋ
      사실 미적분 없이 이산수학이나 정수론 쪽에도 정말 판타지 급의 어려운 문제가 많고, IMO도 주로 그런 분야를 다루는 걸로 알고 있습니다.

      희대의 천재 수학 덕후로 명성이 자자한 테렌스 타오(필즈 상 수상자, 현 UCLA 수학과 교수)가 문득 생각나는군요. 인민 님도 아시려나?

    2. 인민 2011/08/28 22:58 # M/D Permalink

      타오 교수나, 김용웅 교수나... 잽부터가 안되는 상대니 괜히 생각하셨다간 제3자가 상처입어요<-어이
      다만 세계적으로 IMO 휩쓸고 다녔던 수학자들이 한결같이 MO 따로 공부하지 말라고 하는데 왜 학원에 다니는지 이상할 뿐이죠.

      흥미로운 사실은, IMO에서 아랍권은 거의 꼴찌를 면하지 못하고 있는데 이스라엘이야 그렇다 쳐도 아랍 이웃인 이란 역시 출제문제가 명성이 있으며, 사람도 거의 상을 싹쓸이합니다. 왜 그럴까요?

  10. 소범준 2011/08/28 18:38 # M/D Reply Permalink

    1. 수학의 호불호를 가르는 본질적인 면모 때문에 제가 한때나마 수학을 좋아했습니다.
    늘 언제나 수학은 무엇이 참이고 거짓인지 질서 논리 정연하게 분명히 밝혀주니깐요.
    그 점만큼은 성경과 같습니다.(마5:37; 약5:12) 캬~~^^

    2. 근데 저한테라도 수학의 정석을 다시 풀라고 하면... 가히 폭발할 수준!!-_-;;
    이젠 죽어도 그 시절로 돌아가고 싶진 않네요.(근데 이상하게 홍 성대씨가 부러워져용~~^^;)

    3. 그래도 미적분을 처음 배웠을 때가 가장 행복했죠.
    성적이 잘 안나왔다는 게 흠이지만...;;

    1. 사무엘 2011/08/28 20:46 # M/D Permalink

      저도 학창 시절에는 수학이 설정하는 각종 가정과 이상한 notation들, 전제조건들 자체에 대한 의문이 해결되지 않아서 수학에 흥미를 못 뒀습니다. 지금 다시 공부하라면 도전할 의향은 있습니다만...
      솔직히 수학 공부 하는 것보다는, <날개셋> 새 버전을 만드는 게 저의 미래에 더 도움이 되는 투자이기 때문에 제대로 파고들지는 못하고 있죠. -_-

  11. 김동신 2012/10/22 00:37 # M/D Reply Permalink

    고등학교 졸업한지 5년정도 된 ... 새내기(?) 대학생입니다.
    정석 이야기를 보니, 물씬 추억돋는군요 ... 포스트 재밌게 잘 보았습니다. ~_~

    고등학교땐 수학이 너무 어려웠는데 ... 컴퓨터 전공을 공부하면서 이산수학이라던가, 공업수학 따위를 공부하다보니 ... 고등학교때만큼 혐오감이 들진 않는것 같습니다. ^_^

    역시 무슨 공부든 강제로 하기보단, 목적과 방향이 있어야, 습득이 잘 되는것 같습니다 ...

    1. 사무엘 2012/10/22 09:37 # M/D Permalink

      처음 뵙는 분이네요, 반갑습니다. ^^
      저도 학창 시절과 대학 진학 후의 관점의 변화가 님의 경우와 동일합니다.
      특히 수학처럼 눈에 보이지 않는 추상적인 개념을 다루는 과목일수록, 동기 부여가 중요하지요.

Leave a comment

2차 곡선(원뿔 곡선) 이야기

수학에서 함수라는 것은 y=f(x)와 같은 형태로, x에다가 임의의 수를 대입하면 그에 대응하는 y 값이 계산을 통해 딱 하나로 산출되어 나오는 관계를 말한다.

하지만 f(x, y)=0라고 함수를 정의할 수도 있다.
이 식을 만족하는 x, y가 곧 정의역과 치역임이 규정된다.
이런 형태의 함수를 수학 용어로는 음함수(implicit function)라고 일컫는다.
딱 명시적인 함수 형태는 아니지만 함수를 암시적으로 규정하고 있다는 뜻인데, ‘음’이라고 하면 negative가 먼저 떠올라서 한국어로는 뜻이 잘 와 닿지 않는 것 같다.

음함수가 표현력이 더욱 풍부하다. 그도 그럴 것이 y=sqrt(1-x^2)라고만 하면 사분원반원 하나밖에 표현을 못 하지만, x^2+y^2=1이라고 하면 원 전체를 표현할 수 있기 때문이다.
그리고 컴퓨터 상으로 음함수를 처리하는 것도 더욱 까다롭다. x뿐만 아니라 x와 y를 2차원적으로 모두 고려해야 하기 때문이다. 2차원만으로 모자라서 z축도 동원하여 3차원까지 가면 흠..;;;

고등학교 시절에는 이런 음함수 중에서 x, y의 계수가 최대 2차까지 갈 수 있는 녀석을 배운다. 일반화하면 아래와 같은 꼴.

a*x^2+ b*x*y+ c*y^2+ d*x+ e*y+ f = 0

2차식인 a, b, c중 적어도 하나가 0이 아니라면 이 음함수는 아래의 형태 중 하나가 된다.

1. x, y가 실수 범위에서 전혀 존재하지 않기 때문에 빈 그래프. (x^2+y^2=-1 같은 경우)
2. 두 직선 (x^2-y^2=0 같은 경우. 또한, xy=0 이라고 하면 x축과 y축^^)
3. 타원 (x^2+y^2=1)
4. 쌍곡선 (x^2-y^2=1)

원이나 포물선은 굉장한 레어 케이스에서나 존재 가능하다.
또한, a, b, c 계수의 관계에 따라 곡선의 모양이 어떻게 될지 알려주는 판별식도 있다.

2차 곡선인 이들 원, 타원, 포물선, 그리고 쌍곡선은 모습도 인간 세계에서 수학적인 의미를 두기에 충분한 가치를 지니고 있다. 모래시계처럼 ▶◀ 형태로 놓인 원뿔의 단면을 잘랐을 때 나오는 곡선이라고 해서 원뿔곡선(conic section)이라고도 불린다. 신기한 일이 아닐 수 없다.

사용자 삽입 이미지

짤방은.. 초점이 동일한 어느 타원과 쌍곡선의 모습을 자작 프로그램으로 그린 것. 나름 안티 앨리어싱까지 되어 보기에 더욱 아름답다. ㅋ

타원은 “한 초점에서의 거리 + 다른 초점에서의 거리”가 일정한 점들의 집합이다. 두 초점에다가 실을 묶고 팽팽하게 연필을 그으면 비교적 쉽게 그릴 수 있다.
원은 두 초점의 위치가 일치하는 특수한 경우라 하겠다. 타원 모양으로 된 당구대 안에서 그 타원의 한 초점에서 공을 굴리면, 그 공은 다른 초점을 반드시 지나게 될 것이다.

쌍곡선은 “한 초점에서의 거리 - 다른 초점에서의 거리”의 절대값(=차이)이 일정한 점들의 집합이다. 절대값이다 보니 필연적으로 곡선이 둘 존재한다. 초등학교 시절에 배웠던 y=1/x 반비례 그래프가 알고 보니 이 쌍곡선이었다는 사실을 알게 된다.

포물선이야 중학교 시절에 제곱근과 2차식이라는 개념 자체를 처음으로 접할 때 배운다. 그런데 포물선은 단순한 2차식을 넘어서 “한 초점과 한 기준선이 주어졌을 때 초점에서의 거리와 준선까지의 수직 최단 거리가 일치하는 점들의 집합”으로 다른 관점에서 정의가 이루어진다. 사실, 타원과 쌍곡선도 한쪽 초점이 한없이 멀어지면 포물선 모양으로 수렴하게 된다.

포물선은 중력이 존재하는 지구상에서 물건을 던지기만 해도 매우 쉽게 볼 수 있다(단, 공기 저항이 없어야). 포물면은 반사하는 모든 빛을 초점으로 한데 모을 수 있다. 다만, 만들기가 구면보다는 어렵다.

2차 곡선은 이렇듯 세상에서 쉽게 볼 수 있고 실용적이다. 거리와의 제곱에 비례해서 감소하는 만유인력과도 관계가 있다. 제곱의 의미는 2차원, 즉 면적이다.
인공위성은 흔히 지구를 향해 한없이 추락하는 물체라고들 한다. 공중에서 충분한 추진력으로 위성을 가속하지 못하면 그 발사체는 지구로 떨어져 버린다. 그러나 속력이 어느 정도 빨라진 순간부터는 이제 지구로 떨어지지 않고 원 궤도를 그리게 된다.

더 빨라지면 위태위태 타원 궤도를 그리게 되고, 어느 정도 도를 넘어서면 포물선, 그 이후부터는 쌍곡선 궤도를 그리면서 그 발사체는 지구로 다시는 돌아오지 않게 된다. 옛날에 이런 거 시뮬레이션 프로그램을 장난감 삼아 짜면서 놀았던 기억이 있다. ^^;;

그 반면에 음함수의 식이 3차까지 가면, 모양만 변태적으로 복잡하지 쓸모가 없다. 변수의 값이 어떻냐에 따라서 쌍곡선 같은 그런 곡선이 3쌍둥이가 생기기도 하고, -⌒- 이런 모양이나 아니면, 그런 모양에 U자 모양 곡선이 합쳐진 놈 등... 자연에서 볼 일도 없고 의미가 없다는 것이다.

앞서 음함수를 처리하는 건 쉬운 일이 아니라고 언급했는데, 실제로 그렇다.
정확하게 일치하지는 않겠지만 윤곽선 폰트를 래스터라이즈하는 일과 비슷한 과정이 아닐까 하는 생각이 든다.
무식하게 x*y개의 함수값을 일일이 다 구해 보지 않고도 함수값을 구성하는 영역만 매끄러운 경계선을 추출하고 거기에다 안티 앨리어싱까지 하는 건 보통 어려운 일이 아니다.

아래아한글이나 포스트스크립트 같은 다른 폰트 시스템은 잘 모르겠지만, 윈도우 운영체제가 사용하는 트루타입 폰트 래스터라이저는 매 도트에 대해서 윤곽선 안에 있는지의 여부를 판단해서 글자를 찍어 낸다. 그래서 힌팅 정보가 없으면 작은 글씨에서 가는 획이 아예 화면에서 사라지는 일이 생길 수 있다.

본인은 옛날에 너무나 깔끔하게 잘 출력되는 영문 폰트들을 보고서 트루타입 폰트 래스터라이저가 굉장히 똑똑한 줄 알았는데, 알고 보니 다 아주 정교한 수작업으로 만들어진 힌팅 정보 덕분이었다. 힌팅은 획의 굵기를 일관성 있게 보정할 뿐만 아니라 윤곽점을 래스터라이저가 글립 존재 여부를 판단할 때 사용하는 위치로 강제로 옮겨서 획이 사라지지 않게 하는 역할도 한다.
흠, 글 주제가 수학에서 폰트 얘기로 급반전.. 어쨌든 음함수의 렌더링도 그만치 쉬운 일은 아니라는 뜻이다. ^^;;

Posted by 사무엘

2010/10/01 20:23 2010/10/01 20:23
, , , , , , ,
Response
No Trackback , 2 Comments
RSS :
http://moogi.new21.org/tc/rss/response/383

Trackback URL : http://moogi.new21.org/tc/trackback/383

Comments List

  1. 주의사신 2010/10/02 08:56 # M/D Reply Permalink

    1. "y=sqrt(1-x^2)라고만 하면 사분원 하나밖에 표현"에서 사분원은 반원으로 변경되어야 할듯 합니다. (0 <= x <= 1)이라는 조건이 없기 때문이죠.

    2. 원뿔 곡선은 뉴턴 전에 머리 좋다는 사람들의 장난감이었다고 합니다. 뉴턴이 이를 완전히 정리했다고 합니다.

    3. 타원을 45도 정도 회전시킨 후, x에만 절대값을 취하면 하트가 나옵니다. 소위 사랑의 방정식이라고 하는 식이 탄생하는 순간이죠.

    1. 사무엘 2010/10/02 20:22 # M/D Permalink

      의견 감사합니다.
      1. 넹. 실수를 바로잡았습니다. ㅎ
      2. 원뿔 곡선은 그 오일러 등식만큼이나 수학적으로 정말 재미있고 매력적입니다.
      3. 아.. 진짜 그렇게 되겠군요. ^^

Leave a comment

간단한 곡선의 방정식

옛날에 컴퓨터 학원에서 GWBASIC을 중급이나 고급까지 공부해 본 분이라면
마지막 단원인 그래픽을 공부하면서 이런 비슷한 그림을 하나 그려 본 추억 정도는 있을 것이다.
그리는 방법은 간단하다. 세로줄을 하나 그은 뒤, 아랫점은 x축으로 n만치 증가시키고, 윗점은 y축으로 동일한 차이만치 증가시키기를 반복하면 된다.

사용자 삽입 이미지

그 단순함에 비해서 생긴 결과물은 꽤 '컴퓨터그래픽스럽고' 뭔가 멋지다는 느낌이 들지 않는지? 나만 그런 생각이 드는 걸까?

그런데 여기서 의문이 생긴다.
저런 식으로 선을 한없이 많이 그어 나갈 때, 가장자리에 형성되는 저 둥그런 곡선은 수학적으로 어떤 의미를 갖는 곡선으로 수렴하게 될까? (그림에서 분홍색 곡선) 편의상 선을 (0,0)-(0,1)에서 (0,0)-(1,0)까지 긋는 상황을 가정한다면 어떤 곡선이 그려질까?

답만 말하자면 이 곡선은 y = (1 - sqrt(x))^2 으로 수렴한다. 원의 방정식과 비교했을 때 근호와 제곱의 위치만 싹 맞바뀐 형태라는 게 흥미롭다.
이런 곡선의 특성으로부터 실제 곡선의 식을 구하기 위해서는 미분 방정식을 풀어야 한다. 고등학교 수학 수준에서는 물론 해결할 수 없는 문제이다.

곡선의 식이 정확하게 나왔으니 이 곡선의 성질도 다 알 수 있다. 저 선들이 차지하는 면적은 1/6이 된다(0부터 1까지 식을 적분한 값). 곡선과 y = x와의 교점, 다시 말해 곡선의 기울기가 정확하게 -1이 되는 지점이며 곡선 내부에 존재할 수 있는 가장 큰 정사각형의 한 변 길이는 1/4임을 알 수 있다.

이 외에도 최단 강하 곡선이라든가 현수선 같은 곡선 문제도 수학 해석적 관점에서 아주 재미있는 주제이다.
본인은 학창 시절에 그런 것들에 흥미는 느꼈지만, 본격적으로 파고들고 심취하지는 못했다. 그것 말고 다른 것들에 더 심취했기 때문이며, 다른 것들이 뭔지는 이 블로그가 주로 다루고 있는 글감들이다. -_- 주변에서 어려운 수학을 사고의 도구로 자유자재로 다루는 사람을 보면 부러울 따름이다.

Posted by 사무엘

2010/09/24 09:24 2010/09/24 09:24
, ,
Response
No Trackback , 3 Comments
RSS :
http://moogi.new21.org/tc/rss/response/378

Trackback URL : http://moogi.new21.org/tc/trackback/378

Comments List

  1. 김 기윤 2010/09/24 13:59 # M/D Reply Permalink

    식을 대충대충 써도 그래픽으로 나타내면 꽤 멋진 모양도 많이 나오죠. =_= 신기합니다

    1. 사무엘 2010/09/25 01:07 # M/D Permalink

      요즘은 운영체제가 GUI 기반으로 바뀌면서, 그런 창의적인(?) 그래픽 프로그래밍 교육은 오히려 다소 퇴색한 것 같습니다.

  2. 소범준 2011/08/31 02:33 # M/D Reply Permalink

    역시나 수학은 어려우면서도 아름다운 학문입니다.

    ^^

Leave a comment

블로그 이미지

철도를 명절 때에나 떠오르는 4대 교통수단 중 하나로만 아는 것은, 예수님을 사대성인· 성인군자 중 하나로만 아는 것과 같다.

- 사무엘

Archives

Authors

  1. 사무엘

Calendar

«   2013/05   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

Site Stats

Total hits:
162190
Today:
52
Yesterday:
164