프랙탈차원

FrontPage|FindPage|TitleIndex|RecentChanges| UserPreferences P RSS
프랙탈은 자연수가 아닌 무리수의 차원을 가지고 있다는 특징이 있다. 이 때의 차원을 Fractal dimension이라고 한다.


1. 프랙탈의 차원을 구하는 방법

1.1. Similarity Dimension

프랙탈차원을 구하는 방법중에서 가장 쉬운 경우는 대상이 되는 프랙탈집합이 self-similar일 경우이다. 그래서 자기 닮음성이 어느 정도인지를 하나씩 세어서그 값을 m이라고 하고 그 때의 단위 사이즈를 전체크기로 나누었을 때의 개수를 r이라고 하면 dimension d는

d = ln m/ ln r

로 표시된다.

1.2. Box Dimension (혹은 발견자의 이름을 따서 Hausdorff Dimension)

이는 보다 일반적인 프랙탈 집합을 대상으로 차원을 구하고자할 때 사용되는 방법이다. 먼저 대상이 되는 프랙탈을 어떤 ε이 최소길이인 자로 관찰한다고 가정한다. (즉, resolution이 ε라는 얘기다.) 그랬을 때 어떤 그 전체 부피(여기서 부피란 n차원의 부피를 말한다.)는 이 최소길이의 어떤 파워에 반비례하는 값이 되는데 그 값이 바로 이 집합의 차원이된다. 즉,

N(ε) ~ 1/ε^d 가 되고 이로부터

d = lim{ε->0}lnN(ε)/ln(1/ε)

이 된다. 물론 이때 극한이 존재해야한다는 조건이 붙어야함은 당연하다.

이 밖에도 Pointwise and Correlation Dimension이 있고 multifractal의 경우에는 차원을 구하는 방법이 조금더 통계적인 방법으로 바뀌게 된다. 실제의 경우에는 대부분이 multifractal로 근사되므로 실제모델링에서는 통계적인 차원을 계산하는 경우가 훨씬 많다고 한다.

1.2.1. PuzzletChung의 Box Dimension 해례

차원을 측정하고 싶은 도형(엄밀히 말하면 점들의 집합)이 있다고 합시다. 쉬운 예로 Sierpinski Gasket을 들겠습니다. (MathWorld:SierpinskiSieve.html페이지의 하단 참조.)

그 삼각형같이 생긴 도형의 윤곽을 정삼각형(원래 정삼각형이다)이라 가정하고 그 삼각형의 한 변의 길이를 1이라고 하고 다음과 같은 작업을 수행합니다.
  1. x를 1로 합니다.
  2. 도형을 완전히 덮기 위해서 한 변의 길이가 x인 정사각형이 몇 개가 필요한지 봅니다.
  3. x의 길이를 반으로 줄입니다.
  4. 2~3을 반복합니다.

단계별로 실행해 보면,
  • 단계 2에서 도형을 덮기 위해 필요한 한 변의 길이가 1인 정사각형은 1개입니다.
  • 단계 3에서 x는 1/2가 됩니다.
  • 단계 2로 돌아가서, 한 변의 길이가 1/2인 정사각형으로 도형을 덮으려면 작은 삼각형 3개만 덮으면 되므로 3개입니다.
  • ...
  • 계속한다면 당연하게도 1,3,9,27,..,3^n,...과 같은 수열이 나올 것입니다.

x의 길이가 절반이 될 수록 "체적"이 3배로 늘어나는 이 도형의 차원은 Box Dimension에 의해서 log(3)/log(2)로 계산됩니다.

프랙탈이 아닌 일반적인 도형에도 이런 방법이 통합니다. 정육면체를 정육면체로 "덮어" 보면 길이가 반이 될 수록 "체적"은 8배가 된다는 것을 알 수 있습니다. 따라서 정육면체는 log(8)/log(2) = 3차원이라는 것을 알 수 있게 됩니다.

여기서 "체적"이란 measure의 변역입니다. 이 개념에 대한 자세한 사항은 측정이라는 페이지에 논의되어 있습니다.

1.3. 기타

1.3.1. Information Dimension
Box dimension의 개념에, 단위길이가 ε인 각 입체가 방문되는 횟수 즉 확률개념이 포함된 차원.

Box 그리고 Information dimension은 단위길이 ε인 큐브를 정의하고 그 큐브안에 포함된 점들의 갯수를 세는 알고리듬을 필요로함.

1.3.2. Correlation Dimension
Phase space를 채우고 있는 점들 사이의 거리를 이용해서 correlation integral을 정의함으로써, 공간내에 분포된 점들의 조밀도를 이용해서 차원을 정의함. 큐브를 먼저 정의할 필요는 없고 단지 모든 점들에 대한 반복루틴을 필요로함. 계산방법은 간단하지만 계산시간이 오래걸리는 단점.

1.3.3. Lyapunov Dimension
내림차순으로 정리된 LyapunovExponents를 h_j,j=1,2,...,N라고 정의하자.
이 때 Sum_{j=1}^K h_j >= 0을 만족하는 최대의 정수를 K라고 정의하면 Lyapunov dimension은 다음과 같이 정의됨.
D_L = K + 1/|h_{k+1}| Sum_{j=1}^K h_j
이 차원의 특징은 Lyapunov exponent를 이용해서 정의되었다는 점과, 'typical attractor'에 대해서는 information dimension과 동일하다는 것!

1.3.4. Local Intrinsic Dimension
국지적인 영역에서 취합된 데이타 포인트들을 이용해서 어떤 행렬을 구성하고 이 행렬의 계수-Rank-를 구해냄.
각 지역에서 구해진, 정수임이 분명한 이 계수들에 대한 어떤 평균값을 취함으로써, 전체 점들에 대한, 정수가 아닌 실수 차원의 숫자를 정의한 것. 이론적인 뒷받침이 아직 부족한 상태이지만 구현하기가 쉬워 애용되는 추세라고...

"약간 모자란 듯해서 몇 개 더 써넣어 봅니다. 이 책, 저 책, 이 논문, 저 논문 뒤져가며 어렴풋이 파악한 내용인데요 만약 이 쪽으로 처음 뛰어들고 계신다면 다음 책을 권장합니다. 주요 논문을 모아놓고 첫머리에 편집인들의 요약까지 있어 도서관을 뒤지는 수고는 덜 듯하네요"

Edward Ott, Tim Sauer, James A. Yorke(Editors), COPING WITH CHAOS Analysis of Chaotic Data and The Exploitation of Chaotic Systems, John Wiley & Sons, Inc., 1994

그리고 개념이 확 와닿는 제가 본 가장 쉬운 Web Source
[http]http://www.weihenstephan.de/ane/dimensions/dimensions.html'
vivlavie;






"; if (isset($options[timer])) print $menu.$banner."
".$options[timer]->Write()."
"; else print $menu.$banner."
".$timer; ?> # # ?>