APP下载

混沌分形的计算机模拟

2014-07-22左常玲傅廷亮

赤峰学院学报·自然科学版 2014年7期
关键词:分形投影图形

左常玲,傅廷亮

(安徽三联学院 信息与通信技术系,安徽 合肥 230601)

混沌分形的计算机模拟

左常玲,傅廷亮

(安徽三联学院 信息与通信技术系,安徽 合肥 230601)

混沌和分形吸引子的研究是较为复杂的,在计算机出现以前观察混沌吸引子的动态演化几乎不可能.这类吸引子以其特殊形状及内在复杂性而成为分形领域的一大难题,但借助计算机的可视化软件,人们可以交互地观察吸引子的演化,对吸引子的研究起到了极大作用.本文从数学原理及计算机实现两个角度研究了由微分方程产生的混沌分形,提出了合理的图形绘制算法,使用OpenGL编制出交互程序,并以Lorentz吸引子和Ueda吸引子为例分别绘出其三维演化图形.

混沌;分形;程序设计;吸引子;微分方程

1 引言

分形理论是当今世界十分风靡和活跃的新学科,其概念是美籍法国数学家曼德布罗德(B.B. Mandelbort)首先提出的.分形一词英文为Fractal,是由拉丁语Frangere一词创造而成,该词本身具有“破碎”和“不规则”两个含义.分形学科的发展,主要有两个方面:一方面是科学与自然中的许多现实例子的相似性得到了验证;另一方面,随着分形分析新工具的产生,用于研究分形集的数学理论与方法有了巨大的发展,其中大部分源自几何测度论.

分形理论是非线性科学的前沿和重要分支,作为一种方法论和认识论,其启示是多方面的:分形整体与局部形态的相似,启发人们通过认识部分来认识整体,从有限中认识无限;分形揭示了介于整体与部分、有序与无序、复杂与简单之间的新形态、新秩序;分形几何的主要价值在于它在极端有序和真正混沌之间提供了一种可能性.分形最显著的性质是:本来看似十分复杂的事物,事实上大多数均可用仅含很少参数的简单公式来描述.其实这个简单并不那么简单,它蕴含着复杂.分形几何中的迭代法为我们提供了认识简单与复杂辩证关系的生动例子[1-4].

2 混沌的定义

人们做了各种努力企图给分形一个严格的数学定义,但是这些定义都很难适用于一般的情形.最常规的描述是,如果一个欧几里得空间中的集合具有下面所说的全部或大部分性质,它就是分形:

该集合具有精细的结构,即有任意小比例的不规则细节.

该集合是如此的不规则,以至于无论它的局部或整体都不能用微积分或传统的集合语言来描述.

该集合具有某种统计或近似意义上的自相似或自仿射性质.

该集合的分形维数严格大于它的几何拓扑维数.

分形理论的基础是分形几何,而分形几何中复杂的分支莫过于由微分方程的解逼近的混沌吸引子.分形几何主要研究吸引子在空间上的结构,它和混沌有共同的数学祖先——动力系统.如果把非线性动力系统看成是一个不稳定的发散过程,那么由迭代法生成分形吸引子正好是一个稳定的收敛过程.有的混沌学家说,混沌是时间上的分形,而分形是时间上的混沌.混沌具有两个特征:第一个特征是系统状态对初始条件的灵敏依赖性,即初始条件的微小差别会随时间的演化呈指数增长.换言之,如果初始条件只有有限的精度,则随时间的增长,其状态的精度将变得越来越差,最终不可接受和长期不可预测;混沌的第二个特征是其吸引子具有奇异吸引子结构.奇异吸引子又叫随机吸引子,它位于空间中,具有分数维,其轨线形状极其复杂,并具有结构稳定性.随着时间的演化,其轨线是不重叠的.奇异吸引子最典型的特征是其具有无穷嵌套的自相似结构,即取出吸引子中的一小部分进行放大,它具有与原吸引子相同的内部结构,在将放大后的吸引子取出一小部分再放大,它仍然具有与原吸引子相同的内部结构,如此循环,以至无穷.当系统同时具备这两个特征时,则认为该系统存在混沌[5,6].

动力系统的奇异吸引子通常都是分形集,它们产生于非线性函数的迭代和非线性微分方程中. 1963年,气象学家洛伦兹(E.N.Lorentz)在研究流体的对流运动时,发现了以他的名字命名的第一个奇异吸引子,它是一个典型的分形集.1976年,法国天文学家伊侬(M.Henon)考虑标准二次映射迭代系统时获得伊侬吸引子,它具有某种自相似性和分形性质.1986年劳威尔(H.A.Lauwerier)将斯梅尔的马蹄映射变形成劳威尔映射,其迭代下不稳定流形的极限集成为典型的奇异吸引子,它与水平线的截面为康托集.其后又有诸多的新发现.动力系统中另一类分形集来源于复平面上解析映射的迭代.朱利亚(G.Julia)和法图(P.Fatou)于1918-1919年间开创这一研究.他们发现,解析映射的迭代把复平面划分成两部分,一部分为法图集,另一部分为朱利亚集(J集).他们在处理这一问题时还没有计算机,完全依赖于他们自身固有的想象力,因此他们的智力成就受到局限.随后50年间,这方面的研究没有得到什么进展.随着可用机算机来做实验,这一研究课题才又获得生机.1980年,曼德尔布罗特用计算机绘出用他名字命名的曼德尔布罗特集(M集)的第一张图来.其后道迪(A.Douady)构造了含参二次复映射fc,其朱利亚集J(fc)随参数C的变化呈现各种各样的分形图象,茹厄勒(D.Ruelle),茄勒特(L.Garnett)等人都在这一领域取得很好的成果,由于篇幅所限,在此不一一列出.

3 关于OpenGL

在使用迭代方程组方法模拟混沌吸引子过程中存在误差,只能绘制出方程解得近似图形,且由于计算机时间及空间的限制,要想展现一个吸引子的全貌几乎是不可能的.可行的方法是:提供一个交互的环境,允许用户在空间内以任意的角度进行观察,并且可以指定迭代运算的精度,显示吸引子的演变轨迹图形.

在可视化交互式程序设计环境中,OpenGL是个很好的解决方案,它的兼容性好,能在不同的平台下运行.OpenGL实际上是一种图形与硬件的接口.它包括了120个图形函数,开发者可以用这些函数来建立三维模型和进行三维实时交互.与其它图形程序设计接口不同,OpenGL提供了十分清晰明了的图形函数,因此初学者也能利用OpenGL的图形处理能力和1670万种色彩的调色板设计出三维图形以及三维交互软件.OpenGL强有力的图形函数不要求开发者把三维物体模型的数据写成固定的数据格式,允许开发者利用其它不同格式的数据源.这种灵活性极大地节省了开发者的时间,提高了软件开发速度.OpenGL正是提供了这种直观的编程环境和一系列函数,大大地简化了三维图形程序.

在用OpenGL编制图形程序时要建立图形和数字之间的联系,为了使被显示的物体数字化,要在被显示的物体所在的空间中定义一个坐标系.这个坐标系的长度单位和坐标轴的方向要适合对被显示物体的描述,这个坐标系称为世界坐标系.计算机对数字化的显示物体使用二维直角坐标系,这个坐标系称为屏幕坐标系.

投影变换是一种很关键的图形变换,OpenGL中只提供了两种投影方式,一种是正射投影,另一种是透视投影.图1所示的是正射投影,图2所示的是透视投影.

图1 正射投影示意图

图2 透视投影示意图

4 分形图形的算法和计算机实现

至今人们已发现众多的奇异吸引子,本文只对Lorentz吸引子和Ueda吸引子进行模拟,从各个不同的角度得到了许多演变图形.Lorentz吸引子和Ueda吸引子都是典型的分形集,法国天文学家伊侬考虑标准二次映射迭代系统时获得伊侬吸引子也具有某种自相似性和分形性质.在研究非线性方程演化过程时,迭代法是可用的工具.我们可以用一组变量来描述一个物理系统的状态,这些变量都是时间t的函数,在所研究的系统中还存在某些可以调节的“控制参量”,它们可能影响系统的运行状态.最简单的情景是固定一组参量,把时间变量离散成一系列的等间隔的时间步长△t,计算各时间段的系统状态如何变化.在只有一个状态变量x时,这个演化过程可以由一个非线性函数描述.对系统方程进行多次迭代求解,得到一系列的结果数据,绘出系统时间演变的变化图形(见后面图3,图4,图5和图6),从图上看,结果图形看起来显得模糊“混沌”,通常人们称其为周期性的混沌带.混沌带并非乱成一片,从混沌带中不少透明处清楚地看到存在着多点周期.考察每个窗口开始的边界附近的情况就会发现,虽然运动轨道总体上是混乱的,但迭代的绝大多数点集中在周期轨道开始发生的点附近.如图3那样把迭代的值和迭代次数(即时间)画出图形,则清楚地看到图中出现一阵混沌,一阵规则的所谓阵发(间歇)现象.研究发现,以上迭代具有极大的普遍性,很多其它的非线性系统产生混沌的过程、混沌中的窗口情形、自相似结构等等都与一维迭代类似,因为它可以反映出复杂性现象中的内在规律性.

结合本文的需求与OpenGL的特性,我们采用了更加通用的方式去编写程序:先实现一个通用的3D引擎,然后在上面进一步开发出专用的分形库.

其基础数据结构接口如下(由于程序代码太多,此处只列出很少的实例):

该数据结构的好处在于,不使用额外空间,与传统的C语言数组完全兼容,且向上兼容boost库和STL.在性能方面,通常操作都与传统的C语言数组性能相当,在矩阵乘法等算法上没有特殊优化,使用接口设计简单明了.此外,使用传统数组的程序可以十分方便的转由vector代理,几乎不用付出什么代价,还能得到良好的兼容性.

5 程序运行的结果

本文用程序对Lorenz吸引子和Ueda吸引子进行模拟后给出以下的图形显示,操作者可方便的通过指点设备与程序参数进行不同视点的观察和互动,动态地调整参数,显示多幅三维演变图形.图3、图4是Lorenz吸引子的图象,Lorenz吸引子由以下方程给出:

其中σ,r,b是正的参数,这是一个自治的三阶方程.当参数不同时,方程的状态就不同.

图3 Lorentz attractor在混沌态的三灭点透视图像

图4 Lorentz attractor在混沌态的三灭点透视图像Z-axis

该方程可化为:

其中,

(a=1,b=1,c=1.5,A=0.3)

图5 Ueda attractor在混沌态的三灭点透视图像

图6 Ueda attractor在临界态的三灭点透视图像

6 结束语

混沌分形吸引子的细节是无穷无尽的,而人们可以通过有限的部分去认识这些无限的整体,分形本身带来的影响是不可估量的,但更重要的是,通过对它的研究,导致了许多新思想、新工具的诞生,本文正是在有限的计算机环境下去模拟复杂的分形,希望在分形的研究领域起到抛砖引玉的作用.

〔1〕刘华杰.分形艺术[M].湖南:湖南科学技术出版社,1998.18-96.

〔2〕KJ Falconer.Techniques in Fractal Geometry [M].ISBN 7-81054-393-8,July 1997.58-112.

〔3〕BB Mandelbrot,DE Passoja,AJPaullay.Fractal Character of Fracture Surfaces of Metals[J]. Nature,1984,308(19):721-722.

〔4〕JM Sm ith.Fundamentals of Fractals of Engineers and Scientists[M].John W iley&Sons,1991: 125-208.

〔5〕齐东旭.分形及其计算机生成[M].北京:科学出版社,1994.25-102.

〔6〕钟云霄.混沌与分形浅谈[M].北京:北京大学出版社,2010.20-65.

TP391.41

A

1673-260X(2014)04-0027-04

安徽三联学院质量工程教学研究基金项目(NO.12zlgc011);安徽省高等教育振兴计划新专业建设项目(2013zypz082)

猜你喜欢

分形投影图形
解变分不等式的一种二次投影算法
感受分形
基于最大相关熵的簇稀疏仿射投影算法
找投影
找投影
分形之美
分形——2018芳草地艺术节
分形空间上广义凸函数的新Simpson型不等式及应用
分图形
找图形