1. 分形理论
1.1 分形的定义
分形,通常指一个几何形状,可以分成数个部分,而每一部分都近似地是整体缩小后的形状,即具有自相似的性质。
1.2 分形研究的历史
公元17世纪,莱布尼茨就思考过自相似的问题。公元18世纪卡尔·魏尔施特拉斯、格奥尔格·康托尔和费利克斯·豪斯多夫对连续而不可微函数的研究,对分形使用严格的数学处理。
而近代分形热的形成离不开曼德波罗。1967年,法国裔数学家本华.曼德波罗注意到,如果用公里作为测量单位,从几米到几十米的一些曲折地段会被忽略;改用米来做单位,测得的总长度会增加,但一些厘米量级以下的曲折地段还是不能反映出来;进一步,从理论上来说,海边沙砾的下一个尺度是分子、原子,于是要使用更小数量级的尺度的话,得到的海岸线总长度就很不一样。因此,长度不是海岸线的与尺度无关的不变量。曼德波罗引进了“分数维图形”的新概念,建立了今天熟知的分形几何理论。
1975 年开始, 他陆续出版了著作《分形:形状、机遇和维数》和《大自然的分形几何》。曼德波罗的书完全没有得到学术界应有的重视, 直到1982年后,才受到欧美社会的广泛关注,后来被分形学界视为“分形学之圣经”。
1.3 欧几里得几何与分形几何的比较
欧几里得几何 | 分形几何 |
---|---|
经典的( 2000多年的历史 | 现代数学怪物( 30多年的历史) |
基于特征长度与比例 | 无特征长度与比例 |
适合于人工制品 | 实用于大自然现象 |
用公式描述 | 用(递归或迭代)算法描述 |
图形规则 | 图形不规则 |
图形的结构层次有限 | 图形的结构层次无限 |
局部一般不具有整体的信息 | 局部往往具有整体的信息 |
图形越复杂,背后的规则也越复杂 | 图形复杂,其背后的规则经常是简单的 |
2. 理解分形
2.1 分形的测度维
一个维数为d的物体:度量单位变化为原来\(\frac{1}{r}\)后,物体个数增加为\(r^d\)。如果用对数表示,d为维数,r为度量放大倍数,k为体积放大倍数,那么
$$d=log k/log r$$
示例:
- 把线段放大两倍后,所得线段可以看成是2个原来的线段叠加而成
- 把正方形放大两倍后,所得正方形可以看成是\(2^2\)个原来的正方形叠加而成
- 把立方体放大两倍后,所得立方体可以看成是\(2^3\)个原来的立方体叠加而成。
2.2 Julia集和Mandelbrot集
考虑复变函数迭代 $$Z_{n+1} = {Z_n}^2+c, n=0,1,2……(1) $$
固定复参数 c,使得迭代序列{\(Z_n\)}有界的初值\(Z_0\)在复平面上的分布图形称为Julia集,亦即\(J_c=\) { \(Z_0|迭代序列 \){\(Z_n\)}\(有界 \) }
固定初值\(Z_0\),使得迭代序列(1)有界的参数c在复平面上的分布图形称为Mandelbrot集。即\(J_c=\) { \(c|迭代序列 \){\(Z_n\)}\(有界 \) }。记 $$Z=x+iy, c=p+iq$$
则(1)变为
$${
x_{n+1}={x_n}^2-{y_n}^2+p \\
y_{n+1}=2x_ny_n+q
}$$
Julia 集的绘制方法:
- 设定初值 p,q, 最大的迭代次数 N, 图形的大小 a,b, 及使用的颜色数 K.这里需要注意的是c的模总是小于2。可以证明当c的模大于2时,进行迭代必将发散到无穷。
- 设定区域的界值 \( M\ge max(2,\sqrt{p^2+q^2}) \)
- 将区域\(R=[-M,M]\times[-M,M]\)分成\(a\times b\)的网格,分别以每个网格点为初值(\(x_0,y_0\))。利用上面替换之后的公式做迭代。如果对\(n \le N\)所有的都有\({x_n}^2+{y_n}^2\le M^2 \),则将象素\((i, j)\)置为这一种颜色。如果从某一步 n 开始\({x_n}^2+{y_n}^2\ge M^2 \),则将象素 \((i, j)\)置为不同颜色。
还有一个有趣的定理:一个 Julia 集要么是完全连通的,任意两点间都有一条通路;要么是完全不连通的,整个图形全是一个个孤立的点。
Mandelbrot集的绘制方法:
算法上和Julia完全一样,只不过这时固定的是x,y值,初始值,而把c当做变量。Mandelbrot集内的每一个点就对应了一个连通的Julia集,Mandelbrot 集合外的点则对应了不连通的 Julia 集,Mandelbrot图是Julia的缩略图。
由此想象,我们有x,y,p,q四个变量,任意限定其中两个,另外两个当做变量都可以得到不同的图形。如果把全部Julia集合起来,会得到一个四维图形。