李 吉
(武汉理工大学航运学院,湖北武汉 430063)
曼德布劳特“英国的海岸线有多长?”[1]文章提出,当认真研究起像海岸线这种曲线的长度时,是很难有一个准确的数值的。当把海岸线的任意一段放大时,放大后的图又存在着许许多多凸出的海角和凹陷的海湾。因此,用长度是很难来描述海岸线的复杂性的。
分形算法是研究具有任意层次的精细结构的复杂海岸线的最佳方法。分形维数是描述空间和客体的一个重要参数,相对经典维数而言,其既可以是整数,也可以是分数。海岸线拥有复杂的结构,若要用分形理论来研究海岸线,就必须先研究其分形维数。实际测定海岸线分形维数的方法很多,通常有量规法和网格法。
量规法是基于通过测定海岸线的长度来测定海岸线的维数的。根据分形理论有下式:
其中C为常数,D f是分形维数。
网格法就是通过使用长度都不同的正方形网格去覆盖被测的海岸线,因此根据分形理论有下式:
其中,C为待定常数,D为被测海岸线的分形维数。
定理1 设a≤x0<x0<x1<x2<…<x N≤b,则满足插值条件的N次多项式P N(x)存在并且唯一,这也是分形插值的唯一性定理。
定理2 设N是一个大于1 的正整数,{(x i,Fi)∶1 ≤i≤N,i∈Z}是一组数据,相伴这组数据的IFS 是,且垂直比例因子d i满足,则在R2上存在一个相当于欧式距离的距离d,使得这个IFS相对于d是双曲型的,且存在唯一一个非空紧集G⊂R2,使得
定理3 设N是一个大于1 的正整数,{(x i,Fi)∶1 ≤i≤N,i∈Z}是一组数据,相伴这组数据的IFS 是,且垂直比例因子d i满足,使得这个IFS是ρ,ρ是双曲型的。若令G是一个插值于数据集的连续函数的图像,即。其中
函数f(x)的图像若是上述定理2 及定理3中所描述的IFS 的吸引子,则称f(x)为相应于数据集{(x i,Fi)∶1 ≤i≤N,i∈Z}的分形插值函数。
分形插值函数可以近似描述那些欧氏函数不能很好地描述的物象,它利用大自然中许多现象都具有精细的自相似结构这个特性来拟合波动性很强的曲线,如山脉轮廓,森林顶部起伏的外形,钟乳石的外形等等,而且也提供了处理实验数据的新方法。
分形插值函数像欧氏函数一样也可以由“公式”表示,还可以应用IFS 的仿射变换及随机迭代算法(或确定性算法)进行快速计算。它具有的非整数维数,又是不同于欧氏函数的优越之处。
设i=1 ,2 ,…,N,则仿射变换ω-i应由满足如下方程的5 个实数ai、ci、d i、ei和f i确定:
其中
模拟开始时,首先创建一个线性数据集,以存放生成的模拟结果,然后通过查询,从该矢量数据集中产生一个源记录集,以对迭代结果进行操作。迭代步骤:
(1)确定开始点(x0,y0),迭代总次数 N,起始阈限迭代次数N0(为防止生成图形与原图的差别太大,当迭代次数大于N0时开始画点),随机数R。
(2)根据随机数,选取相对应的di,并依据上述公式计算得出ai、ci、ei和fi的结果,也同时得出对(x0,y0)进行仿射变换所产生新坐标点(x1,y1)。
(3)若此时的迭代次数大于起始阈限迭代次数 N0,则绘制新坐标点(x1,y1),否则跳转到步骤(2)。
(4)若此时的迭代次数大于总迭代次数N时,生成的点集能够充分接近该IFS 的吸引集或吸引子,则绘图结束。否则,再以(x1,y1)作为初始点,重复步骤(2),见图1 。
图1 基于IFS 的分形插值岸线回波的模拟图
(1)海岸线的曲折度与分维数是成正比关系的,但在不同的方法模拟海岸线时,即使是在相同分维值的情况下,它们所模拟的曲线的曲折度也是不同的,故不能将一者进行简单的比较。
(2)将海岸线图像位置明显变化的点作为控制点(即插值点),从而使海岸线图像的整体轮廓相似。垂直尺度因子对模拟海岸线有重要影响,通过调整垂直因子 值可以使分形插值模拟的海岸线更加逼真。
(3)由于海岸线的模拟是通过采用迭代点列构成的,因此可以直接计算出由这些点列生成的海岸线曲线长度,然后近似计算出海岸线的真实长度。
1 Mandelbrot B B.How long is the coast of Britain?[J ].Science ,1967 ,156 (3775):636-638.
2 朱晓华,王建.海岸线空间分形性质探讨—以江苏省为例[U].地理科学,2001 ,21(1):70-75.
3 金以文,鲁世杰.二分形几何原理及其应用[M].浙江大学出版社,1998.
4 江富泉,罗朝盛.基于迭代函数系统的分形算法及其应用[J ].2002.
5 Mandelbrot B B.The Fractal Geometry of Nature [M].New York:Freeman,1982.