lincoln_ma 发表于 2006-5-27 21:40

遗传算法应用于桥梁健康监测系统传感器优化布置

本帖最后由 wdhd 于 2016-4-14 13:53 编辑

  前段时间说本月末将我做的工作整理一下贴出来,今日履行承诺。声明如下:
1、该文只是我论文工作的一部分,初次计算结果,本是提给老板的阶段性报告,结论不成体系,有待验证。仅供参考。
2、计算中采用的模型是一78m+140m+78m连续刚构桥,为实桥结构。计算主要采用主梁各振型,结点从1~99。
3、广义遗传算法是董聪等在青马大桥传感器优化布置时采用的算法,本文采用的所有技术,都是严格按照该文(或相关文献)设计,计算模型除外。另,本文只是采用了该文中的第一个目标函数,即位移传感器的目标函数,但可轻易地拓展到第二、三个目标函数情况下。
4、呵呵,说来好笑,本文设计的目的其实是想证明广义遗传算法存在严重的早熟缺陷,因为各文献中提及的该法,很多技术都是针对算法的局部寻优性能来设计的。计算的结果证实该法的确在优化过程中行之有效,至少作者目前这样认为。期待各位继续努力,来验证方法的功效。
5、请各位多提意见,少灌水。交流才能长进,探讨方得真知。
6、请加技术分。http://202.118.250.107/vibbbs/VibUploadFiles/attachment.php?aid=10739]打开附件

  [此贴子已经被作者于2006-5-27 21:42:33编辑过]
  [ 本帖最后由 azureps 于 2006-12-20 11:35 编辑 ]

dhj_dhj 发表于 2006-5-30 10:12

回复:(lincoln_ma)遗传算法应用于桥梁健康监测系统...

本帖最后由 wdhd 于 2016-4-14 13:53 编辑

  非常感谢lincoln_ma兄给我们带来这么好的帖子,董聪等的文献我也看过,我想问的是,你说的主梁各振型指的是各个方向的吗?如果是第一种适应度的话好像只能是单一构件的单向位移模态,我也做过一个小算列,用的是主梁竖向振型计算,不知道楼主有没有用一些局部寻优的方法去计算过,比如说序列法什么的,我试过用序列法计算能很快的找到最有解,用遗传算法最后也就收敛与这个最优解。当然,可能我计算有问题,希望楼主能试试看能得出什么结论。

lincoln_ma 发表于 2006-5-30 11:05

本帖最后由 wdhd 于 2016-4-14 13:53 编辑

  我用的也是主梁的竖向振型,不过振型阶数比较大,当时就想当个算例。

  遗传算法优化时遗传的代数过大的确是个问题,我每次计算都要很长时间,觉得很头痛。这几天我在遗传过程中加入了倒位算子(见《遗传算法原理及应用》(周明,孙数栋)),目的是尽量保证同一基因位上等位基因的多样性,从而保证有效基因的存在。由于程序还没有完善,倒位算子只针对无效解,因此效果不是很理想,早熟现象比较严重,并且运算时间较长。我想,利用自适应技术或许能改善遗传过程,正在努力实现。

  关于序列法倒是没有试过,不知道dhj_dhj兄能否提供一些相关资料,只有照着你的方式设计程序,计算的结果才能对比。

  感谢dhj_dhj兄的建议,十分感谢。

  [此贴子已经被作者于2006-5-30 11:05:33编辑过]

dhj_dhj 发表于 2006-5-30 14:41

回复:(lincoln_ma)我用的也是主梁的竖向振型,不过...

本帖最后由 wdhd 于 2016-4-14 13:53 编辑

  序列法包括累加法和消去法,采用第一个适应度的话,是值越小越好,我也是根据累加法的思想启发而这样算的,是否正确还不能肯定,资料的话,可以看看刘娟写的传感器优化配置中的逐步累加法,希望楼主能早点得出结论。

  我也感觉用遗传算法,初始种群大小的定义,收敛的早熟现象,导致结果往往不是全局最优解,这都比较难解决,看的出楼主在这个方面研究很深,希望楼主能早点解决这个问题。

lincoln_ma 发表于 2006-6-7 20:40

回复:(lincoln_ma)遗传算法应用于桥梁健康监测系统...

本帖最后由 wdhd 于 2016-4-14 13:54 编辑

  在网上找到的一篇e文资料。感兴趣的可以看看,里面有这方面的东东。

  [此贴子已经被作者于2006-6-7 20:44:20编辑过]

bbok 发表于 2006-6-7 22:22

这个算法稳定性如何?

dhj_dhj 发表于 2006-6-8 10:02

回复:(bbok)这个算法稳定性如何?

本帖最后由 wdhd 于 2016-4-14 13:54 编辑

  解的稳定性与初始种群的大小等定义有关,这个问题确实有待解决。

bbok 发表于 2006-6-8 10:42

另外遗传算法的效率太低了点,好多人都反应用Matlab编的遗传算法计算效率很低。可能这和matlab的计算效率有关。所以大家要想提高计算效率还是用其它语言比较好。

lincoln_ma 发表于 2006-6-8 19:07

我曾用完全相同的条件计算过很多次,并不是所有的计算都能顺利找到全局最优解。发生这种情况的原因,我觉得和遗传算法固有的特点有直接关系。遗传算法本身是一种基于markov链理论的优化方法,它是一种启发式的概率方法,它的全局收敛性也应当建立在概率意义上,即是说,我们对其稳定性的要求,应该是:当计算次数足够大时,遗传算法收敛到全局最优解的概率应不小于某一很较大的值。另外,当计算参数给定时,计算结果的可接受的概率,也应该不小于某一个确定的取值。我在计算中,虽然不是每次都能达到全局最优解,但是完全能够用上述的两条来合理地解释,这是我对bbok兄所关心的稳定性的看法。
关于计算效率问题,个人觉得就这个问题而言,应该还能接受,因为本优化问题对实时性要求不高。而且,该算法在本问题中的应用,还处于探索阶段,我想,工程中大规模应用的时日,一定不会太久了。
上楼的兄台所言的效率,好像是m语言运算的效率,又好像是指遗传算法计算的效率,不是很清楚。就m语言而言,运行效率应该是比c++等要低,这是不争事实。但就程序开发来说,m语言应该比c++等要实用得多;另外,m语言的代码能在matlab中转化为c代码,因此,这个问题应该不会成为遗传算法广泛应用的瓶颈。就遗传算法本身的效率而言,可能也是比别的算法要低(目前而言是这样),因为它不可避免地有重复的无用搜索,这是遗传算法本身的特点所决定了的。但是,遗传算法的应用前景还是相当好的,它不受具体领域限制的特点必将让许多传统方法黯然失色。

dhj_dhj 发表于 2006-6-9 14:38

回复:(lincoln_ma)我曾用完全相同的条件计算过很多...

本帖最后由 wdhd 于 2016-4-14 13:54 编辑

  从资料上不能找到十分适合的方法,就是和他那个思路相似就ok了,就是一个个自由度的计算,选其中变形能最大的或者是最小的,在从剩下的中在开始选取.大概就是这个思路,附件是上面我说的文献,至于其中介绍的什么QR分解,可以不要考虑,希望lincoln_ma兄有用.

lincoln_ma 发表于 2006-6-18 15:15

回复:(lincoln_ma)遗传算法应用于桥梁健康监测系统...

首先感谢dhj_dhj兄,根据dhj_dhj兄提供的文章,我将序列法与遗传算法中使用的方法进行了比较,并写成如下文字,请dhj_dhj兄等指正。同时也希望dhj_dhj兄能将自己研究序列法的心得与大家分享。
文章不是很有条理,只作抛砖引玉之用,请各位大侠多提意见。另外,受这次的启发,我打算将各种传感器布置的优化算法都研究一下,但手头的资料不是很完整,因此希望各位高手多提供一些资料,介绍各种方法。
希望大家能积极讨论本话题!

yuelushan 发表于 2006-7-12 16:46

好贴

以后我的课题也是这个。我小硕,还有很多问题要请教lincoln_ma,dhj_dhj

mywzx 发表于 2006-9-1 11:08

今天来到这里,看到很多价值性很高的讨论.我的课题一方面也是做传感器的优化布置.但我做的是无线加速度传感器在高耸结构上的动力响应分析,也要涉及到传感器的优化布置.
传感器的优化布置有很多方法,如模态动能法,Guyan模型缩减法,有效独立法,奇异值分解法,基于遗传算法的优化,也就是楼主所探讨的.清华大学土木系在香港青马大桥的健康监测系统中利用遗传算法寻找加速度传感器的最优布置,把其中测取的变形能作为遗传进化的适应值(Fitness),实际上是使测点远离各振型节点.
我有一点疑问,就是说如果应用无线加速度传感器,基于无线加速度传感器的特点,还需要优化布置吗?是不是多放一些就都解决了?
还有我也想在遗传算法方面进行一些深入的研究,不知需要看些哪方面的书或文献,还请各位指点.谢谢!:handshake

webyl 发表于 2006-9-1 11:39

这个我们学校有一个老师是研究这个的

dgccpu 发表于 2006-9-25 23:24

好东西 !
页: [1] 2
查看完整版本: 遗传算法应用于桥梁健康监测系统传感器优化布置