当前位置:首页 » 操作系统 » 差分控制算法

差分控制算法

发布时间: 2024-10-21 18:40:53

‘壹’ 什么是差分算法

在数值计算中,常用差分近似微分。
例如:
向前差分:f'(n)=f(n+1)-f(n)
向后差分:f'(n)=f(n)-f(n-1)

‘贰’ 什么是有限差分算法

有限差分法(FDM)的起源,讨论其在静电场求解中的应用.以铝电解槽物理模型为例,采用FDM对其场域进行离散,使用MATLAB和C求解了各节点的电位.由此,绘制了整个场域的等位线和电场强度矢量分布.同时,讨论了加速收敛因子对超松弛迭代算法迭代速度的影响,以及具有正弦边界条件下的电场分布.
有限差分法
有限差分方法(FDM)是计算机数值模拟最早采用的方法,至今仍被广泛运用。
该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。有限差分法以Taylor级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。
分类
对于有限差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式。从差分的空间形式来考虑,可分为中心格式和逆风格式。考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。
构造差分的方法
构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式
时域有限差分法在GIS局部放电检测中的应用
1 前言
GIS由于其占地面积小以及高度的可靠性被广泛应用,但也有因为固定微粒、自由微粒以及绝缘子内部缺陷而发生的绝缘故障。一般发生绝缘故障都伴随有局部放电发生,因而局部放电检测是诊断电力设备绝缘状况的有效方法之一。超高频局部放电检测方法因为具有强的抗干扰能力和故障点定位能力而受到制造厂家和研究部门的普遍关注,并且已有部分产品应用于现场。超高频局部放电检测方法一般直接检测出局部放电脉冲的时域信号或者频谱信号,因为不同的研究者所研制的检测用传感器的带宽和检测系统(内部传感器法和外部传感器法)不同,以及传感器和局部放电源的相对位置对检测结果的影响,检测所得结果存在较大差异,缺乏可比性,因此有必要对局部放电信号的传播规律进行研究。
时域有限差分(Finite-Difference Time-Domain)法最早是由KaneS.Yee在1966年提出的,是一种很有效的电磁场的数值计算方法,不需要用到位函数,是一种在时间域中求解的数值计算方法。这种方法被应用于天线技术、微波器件、RCS计算等方面。
本文借助时域有限差分法对252KV GIS内部局部放电所激发的电磁波传播进行仿真,并用外部传感器超高频局部放电检测方法在实验室对252kV GIS固定高压导体上的固定微粒局部放电信号进行实测,仿真结果和实验结果基本一致,为超高频局部放电检测结果提供了有效的理论依据。
2 时域有限差分法
时域有限差分法是一种在时域中求解的数值计算方法,求解电磁场问题的FDTD方法是基于在时间和空间域中对Maxwell旋度方程的有限差分离散化一以具有两阶精度的中心有限差分格式来近似地代替原来微分形式的方程。FDTD方法模拟空间电磁性质的参数是按空间网格给出的,只需给定相应空间点的媒质参数,就可模拟复杂的电磁结构。时域有限差分法是在适当的边界和初始条件下解有限差分方程,使电磁波的时域特性直接反映出来,直接给出非常丰富的电磁场问题的时域信息,用清晰的图像描述复杂的物理过程。网格剖分是FDTD方法的关键问题,Yee提出采用在空间和时间都差半个步长的网格结构,通过类似蛙步跳跃式的步骤用前一时刻的磁、电场值得到当前时刻的电、磁场值,并在每一时刻上将此过程算遍整个空间,于是可得到整个空间域中随时间变化的电、磁场值的解。这些随时间变化的电、磁场值是再用Fourier变换后变到相应频域中的解。
在各向同性媒质中,Maxwell方程中的两个旋度方程具有以下形式(式(1)~(2))。

式中,ε为媒质的介电常数;μ为媒质的磁导率;σ为媒质的电导率;σ*为媒质的等效磁阻率,它们都是空间和时间变量的函数。
在直角坐标系中,矢量式(1)~(2)可以展开成以下六个标量式。

为了用差分离散的代数式恰当地描述电磁场在空间的传播特性,Yee提出了Yee Cell结构,在这种结构中,每一磁场分量总有四个电场分量环绕,同样每一电场分量总有四个磁场分量环绕,Yee对和分量在网格单位上的分布情况如图1所示。为达到精度,Yee计算和时在时间上错开半个步长,用中心差商展开偏微分方程组,得到x轴方向电场和磁场FDTD迭代公式(式(9)~(10)),Y轴和z轴迭代公式与x轴迭代公式成对称形式(略)。

FDTD方法是Maxwell方程的一种近似求解方法,为了保证计算结果的可靠性,必须考虑差分离散所引起的算法稳定性和数值色散问题,时间步长和空间步长应满足(11)~(12)条件。

其中,δ=min(△x,△y,△z);υmax为电磁波在媒质中传播的最大相速;λmin为电磁波在媒质中的最小波长值。
式中△x,△y和△z分别是在x,y和z坐标方向的空间步长,△t是时间步长,ij和k和n是整数。
3 GIS局部放电电磁仿真和超高频检测
SF6气体绝缘的GIS中局部放电的脉冲持续时间极短,其波头时间仅几个ns。为了简化分析,将局部放电电流看成对称脉冲,一般用如下的Gaussian形状的脉冲模型来表示,根据式13和文献6本文仿真用局部放电源高斯脉冲的峰值电流取30mA,脉冲宽度取5ns,波形如图2所示。

GIS局部放电信号频带较宽,用于接收信号的传感器(天线)应该满足检测要求,本文采用超宽带(300MHz~3000MHz)自补结构的双臂平面等角螺旋天线,天线结构如图3所示。

该天线在一定频率范围内可以近似认为具有非频变天线的特性,因为GIS局放信号的频率是在一个范围内变化,对于不同频率的GIS局放信号,该天线的阻抗不随频率变化,可方便实现天线和传输线的阻抗匹配,避免波形畸变。用HP8753D网络分析仪对天线的驻波比进行测试,结果在300MHz~3000MHz的频率范围内驻波比小于2.0,根据电磁理论当驻波比小于2.0时可以不考虑驻波的影响,表明该平面等角螺旋天线在设计频率具有良好的频响特性,所测结果可靠。
超高频法把GIS看作同轴波导(如图4所示),局部放电产生的短脉冲沿轴向传播,传感器作为接收天线,接收局部放电所激发的电磁波。

本文针对252KV GIS内高压导体上φ0.05×lcm固定突起发生局部放电进行模拟,GIS内部高压导体外直径为10.2cm,外壳内直径为29.4cm,长度为4米。采用1×l×lcm网格进行剖分,边界用完全匹配层(PML)材料吸收边界,其中绝缘子相对介电常数取3.9。采用IMST Empire电磁仿真软件分别对图4的GIS发生局部放电时内部点1和外部点2处的信号进行仿真,仿真结果如图5所示。
图5(a)和(b)的仿真结果表明在GIS内部发生局部放电时,局部放电脉冲可以激发上升沿很陡的信号,由于其内部为不连续波导结构,电磁波在其内部将引起反射和复杂谐振,频率成分可高达GHz。另外,比较内部点1和外部点2处的仿真结果,内部点1处的信号幅值是外部点2处的两倍,表明信号可以从绝缘缝隙泄漏,但由于绝缘子和缝隙的影响幅值将明显发生衰减,并且信号在绝缘缝隙处发生的折射和散射,外部信号比内部信号复杂。图5(c)表明局部放电频带比较宽,可高达GHz,信号成分较为丰富。

采用外部传感器超高频局部放电检测系统对252KV GIS内高压导体φ0.05×1cm固定突起局部放电进行实测。由于局部放电信号比较微弱,加之高频信号传播过程中衰减较大,在测试系统中采用增益不低于20dB的宽带放大器。在实验过程中对空气中的局部放电高频信号进行衰减特性研究发现该检测系统有效检测范围为17米。在外部点2处(距离GIS外壳绝缘缝隙10cm)的检测结果如图6所示。比较图5(b)和图6表明,仿真结果和实测结果基本一致,这个结论为超高频局部放电检测结果提供了理论支持。

超高频局部放电检测方法已经表明是非常有效的局部放电检测方法,本文借用时域有限差分法从信号的时域特征出发来验证局部放电检测结果,但由于不同电压等级的GIS结构存在差异,以及故障微粒的状态不同,对检测结果都有影响,并且目前还没有找出超高频方法和传统检测方法之间的内在关系,有待进一步深入研究。
4 结论
时域有限差分法对GIS局部放电脉冲所激发的电磁波仿真结果表明,局部放电信号上升沿较陡,频率可达GHz;由于绝缘子以及绝缘缝隙的影响,使得同轴波导结构不连续,将产生很复杂的电磁波。
a.由于绝缘子以及绝缘缝隙的影响,使信号幅值发生明显衰减,外部信号的幅值是内部信号幅值的一半。
b.实验结果和仿真结果基本一致,进一步从理论上论证了超高频局部放电检测方法的有效性。

‘叁’ 优化算法笔记(七)差分进化算法

(以下描述,均不是学术用语,仅供大家快乐的阅读)
差分进化算法(Differential Evolution Algorithm,DE)是一种基于群体的进化算法,它模拟了群体中的个体的合作与竞争的过程。算法原理简单,控制参数少,只有交叉概率和缩放比例因子,鲁棒性强,易于实现。
差分进化算法中,每一个个体的基因表示待求问题的一个候选解。每次迭代将先进行变异操作,选择一个或多个个体的基因作为基,然后选择不同的个体的差分来构成差分基因,最后将作为基的基因与差分基因相加来得出新的个体。交叉操作将新的个体将于父代的对应个体交叉,然后进行选择操作,比较交叉后的个体与父代的对应个体,选择较优的个体保留至下一代。在迭代完成之后将选择种群中最优个体的基因作为解。
差分进化算法可以算是我所使用过的优化算法中大魔王级别的算法,虽然它每个方面都没有强到离谱,但是综合起来的效果好于大多数算法。它就像一个每个科目都能考到90分(百分制)的学生,虽然没门课都不是最优秀的,但是论综合,论总分,它有极大的概率是第一名。

在我研究优化算法的小路上,我的目标就是找到一个能打败大魔王或是能在大多数方面压制魔王的算法。

这次的主角就选魔王军吧(或者蚁王军,为了与蚁群算法区别还是叫魔王军吧),个体则称之为魔王兵。
魔王兵的能力取决于它们的基因,它们可以根据环境或者需要改变自己的基因使得自己更加强大,更方便的处理问题,问题的维度与基因维度相同。

表示第i个魔王兵在进化了第t次后的基因,该个体有D位基因。
与遗传算法同为进化算法的差分进化算法,它们的操作(算子)也都非常相似的,都是交叉,变异和选择,流程也几乎一样(遗传算法先交叉后变异,差分进化算法先变异后交叉)。

说到差分进化算法中的变异,我就想到一句论语 “三人行,必有我师焉。择其善者而从之,其不善者而改之。” ,其实这句论语已经向我们说明了差分进化算法的整个流程:
“三人行,必有我师焉”——变异,交叉。
“择其善者而从之,其不善者而改之”——选择。
差分进化算法中,当一个魔王兵变异时,它会先找来3个小伙伴,当然是随机找来3个小伙伴,避免同化。在一个小伙伴的基因上加上另外两个小伙伴基因之差作为自己的目标基因。其变异公式如下:

表示第i个魔王兵找到了编号为r1、r2和r3的三个魔王兵,当然了i、r1、r2、r3为互不相同的整数,F为缩放比例因子,通常 ,一般取F=0.5。 为第i个魔王兵交叉后的目标基因图纸,不过这是个半成品,再经过交叉后,目标基因图纸才算完成。
其实现在我们已经有了5个基因图纸了 ,接下来将进行交叉操作。由于变异操作,差分进化算法的种群中个体数至少为4,即魔王军中至少有4个小兵。

交叉操作中,魔王兵i会将目标基因图纸 进行加工得到 ,加工过程如下:

其中 。 为交叉概率,其值越大,发生交叉的概率越大,一般取 。 为{1,2,…,D}中的随机整数,其作用是保证交叉操作中至少有一维基因来自变异操作产生的基因,不能让交叉操作的努力白费。
从公式上可以看出交叉操作实际上是从变异操作得出的基因图纸上选择至少一位基因来替换自己的等位基因,得到最终的基因图纸。

选择操作相对简单,魔王兵i拿到了最终的基因图纸 ,大喊一声,进化吧,魔王兵i的基因改变了。它拿出了能力测量器fitness function,如果发现自己变强了,那么就将基因 保留到下一代,否则它选择放弃进化,让自己还原成 。

实验又来啦,还是那个实验 ,简单、易算、好画图。
实验1 :参数如下

图中可以看出在第20代时,群体已经非常集中了,在来看看最终得出的结果。

这结果真是好到令人发指,恶魔在心中低语“把其他的优化算法都丢掉吧”。不过别往心里去,任何算法都有优缺点,天下没有免费的午餐,要想获得某种能力必须付出至少相应的代价。
实验2:
将交叉率CR设为0,即每次交叉只选择保留一位变异基因。

看看了看图,感觉跟实验1中相比没有什么变化,那我们再来看看结果。

结果总体来说比实验1好了一个数量级。为什么呢?个人感觉应该是每次只改变一位基因的局部搜索能力比改变多位基因更强。下面我们将交叉率CR设为1来看看是否是这样。
实验3:
将交叉率CR设为1,即每次交叉只选择保留一位原有基因。

实验3的图与实验1和实验2相比好像也没什么差别,只是收敛速度好像快了那么一点点。再来看看结果。

发现结果比实验2的结果还要好?那说明了实验2我得出的结论是可能是错误的,交叉率在该问题上对差分进化算法的影响不大,它们结果的差异可能只是运气的差异,毕竟是概率算法。
实验4:
将变异放缩因子设为0,即变异只与一个个体有关。

收敛速度依然很快,不过怎么感觉结果不对,而且个体收敛的路径好像遗传算法,当F=0,时,差分进化算法退化为了没有变异、选择操作的遗传算法,结果一定不会太好。

果然如此。下面我们再看看F=2时的实验。
实验5:
将变异放缩因子设为2。

实验5的图可以明显看出,群体的收敛速度要慢了许多,到第50代时,种群还未完全收敛于一点,那么在50代时其结果也不会很好,毕竟算法还未收敛就停止进化了。

结果不算很好但也算相对稳定。

通过上面5个实验,我们大致了解了差分进化算法的两个参数的作用。
交叉率CR,影响基因取自变异基因的比例,由于至少要保留一位自己的基因和变异的基因导致CR在该问题上对算法性能的影响不大(这个问题比较简单,维度较低,影响不大)。
变异放缩因子F,影响群体的收敛速度,F越大收敛速度越慢,F绝对值越小收敛速度越快,当F=0是群体之间只会交换基因,不会变异基因。

差分进化算法大魔王已经如此强大了,那么还有什么可以改进的呢?当然有下面一一道来。
方案1 .将3人行修改为5人行,以及推广到2n+1人行。
实验6:
将3人行修改为5人行,变异公式如下:

五人行的实验图看起来好像与之前并没有太大的变化,我们再来看看结果。

结果没有明显提升,反而感觉比之前的结果差了。反思一下五人行的优缺点,优点,取值范围更大,缺点,情况太多,减慢搜索速度。

可以看出算法的收敛速度比之前的变慢了一点,再看看结果。

比之前差。

差分进化算法的学习在此也告一段落。差分进化算法很强大,也很简单、简洁,算法的描述都充满了美感,不愧是大魔王。不过这里并不是结束,这只是个开始,终将找到打败大魔王的方法,让新的魔王诞生。
由于差分进化算法足够强,而文中实验的问题较为简单导致算法的改进甚至越改越差(其实我也不知道改的如何,需要大量实验验证)。在遥远的将来,也会有更加复杂的问题来检验魔王的能力,总之,后会无期。
以下指标纯属个人yy,仅供参考

目录
上一篇 优化算法笔记(六)遗传算法
下一篇 优化算法笔记(八)人工蜂群算法

优化算法matlab实现(七)差分进化算法matlab实现

‘肆’ 差分算法是什么

在数值计算中,常用差分近似微分.
最简单的差分格式有向前、向后和中心3种.
向前差分:f'(n)=f(n+1)-f(n)
向后差分:f'(n)=f(n)-f(n-1)
中心差分:f'(n)=[f(n+1)-f(n-1)]/2

热点内容
电脑打印机提示服务器不可用 发布:2024-10-21 20:32:56 浏览:707
sql随机数不重复 发布:2024-10-21 20:26:13 浏览:427
php密码复杂 发布:2024-10-21 20:18:38 浏览:350
编译android内核不优化 发布:2024-10-21 20:05:31 浏览:279
小图灵编程课 发布:2024-10-21 20:05:25 浏览:930
安卓系统如何结识外国人 发布:2024-10-21 19:56:33 浏览:974
同济ftp服务器如何登陆 发布:2024-10-21 19:24:28 浏览:443
交叉编译ios 发布:2024-10-21 19:12:50 浏览:212
部落冲突安卓脚本 发布:2024-10-21 19:12:49 浏览:648
androidgpio驱动 发布:2024-10-21 19:06:13 浏览:376