云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 使用MATLAB遗传算法工具实例(详细)

使用MATLAB遗传算法工具实例(详细)

  • 62 次阅读
  • 3 次下载
  • 2025/12/10 20:42:32

图8.16 在迭代60, 80, 95, 100次时的种群

随着代数的增加,种群中的个体靠近在一起,且逼近最小值点[0,0]。 8.2.5.7 算法的停止条件

遗传算法使用下列5个条件来确定何时停止:

? Generations(代数)——当产生的代的数目达到规定的代数的值时,算法停止。

? Time limit(时限)——在运行时间的秒数等于时限时,算法停止。

149

? Fitness limit(适应度限)——当适应度函数的值对于当前种群的最佳点小于或等于适应度限时,算法停止。

? Stall generations(停滞代数)——在连续繁殖的时间序列中,若长时间不繁殖新代,亦即目标函数无改进,到达停滞代数规定的代数时,则算法停止。

? Stall time limit(停滞时限)——在秒数等于停滞时限的时间间隔期间,若目标函数无改进,则算法停止。

若这5个条件中任何一个条件一旦满足,则该算法停止。我们可以在遗传算法工具的“Stopping criteria(停止标准)”选项中指定这些标准的值。它们的缺省值如图8.17所示。

图8.17 停止标准的缺省值

当运行遗传算法时,“Status(状态)”面板显示这些导致算法停止的标准。

“Time limit(时限)”选项与“Stall time limit”选项可以用来防止算法运行过长的时间。如果算法由于这两个条件之一而停止,则可以通过相应增加“Time limit”或“Stall time limit”的值来改善运行的结果。

8.3 使用遗传算法工具求解问题

本节首先概括使用遗传算法工具GUI的一般步骤,然后介绍如何从命令行使用遗传算法工具,最后通过例子,详细说明如何使用遗传算法工具来求解优化问题。

8.3.1 使用遗传算法GUI

在前面一章,已经介绍了使用遗传算法工具的初步知识。本节将简要归纳使用遗传算法工具GUI来求解优化问题的一般步骤,内容包括:打开遗传算法工具;在遗传算法工具中定义问题;运行遗传算法;暂停和停止运算;图形显示;创建用户图形函数;复现运行结果;设置选项参数;输入输出参数及问题;从最后种群继续运行遗传算法。 8.3.1.1 打开遗传算法工具

在MATLAB窗口中输入gatool,打开、进入遗传算法工具,初启时的界面显示如图8.18所示。

150

图8.18 遗传算法工具初启时的界面

8.3.1.2 在遗传算法工具中定义问题

在下列两个文本框中定义所要解决的问题:

(1) 适应度函数——求解的问题是求目标函数的最小值。输入一个计算适应度函数的M文件函数的句柄。

(2) 变量个数——适应度函数的独立变量个数。

注意:当运行遗传算法工具时不要用“Editor/Debugger(编辑/调试)”功能来调试目标函数的M文件,而要从命令行直接调用目标函数或把M文件输入到遗传算法函数ga。为了方便调试,可以在遗传算法工具中把问题输出到MATLAB工作窗中。

如图8.19所示,输入前面章节所介绍的Rastrigin函数或my_fun函数作为适配度函数,它们的变量个数为2。

图8.19 输入适应度函数与变量个数

8.3.1.3 运行遗传算法

151

要运行遗传算法,在“ Run solver(运行求解器)”中单击Start按纽,如图8.20所示。

图8.20 单击Start按钮

这时,在“Current generation(当前代)”文本框中显示当前代的数目,在Status and results”窗格显示“GA running”等信息,如图8.23所示。

图8.21 当前代数和状态与结果窗格

当遗传算法停止时,“Status and results”窗格显示: ? “GA terminated(GA终止)”信息。 ? 最后一代最佳个体的适应度函数值。 ? 算法停止的原因。 ? 最终点的坐标。

图8.22显示当运行例子“Rastrigin 函数”遗传算法停止时的信息。

图8.22 Rastrigin函数的遗传算法运行结果

在遗传算法工具中,当遗传算法运行时可以更改多个参数设置。所做的改变将被应用到下一代,即在下一代将按照新设置的参数运行。在下一代开始但尚未应用改变的参数之前,在“Status and results”窗格显示信息“Changes pending”。而在下一代开始且应用了改变的参数时,在“Status and results”窗格显示信息“Changes applied”。这样在遗传算法运行时更改了参数

152

搜索更多关于: 使用MATLAB遗传算法工具实例(详细) 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

图8.16 在迭代60, 80, 95, 100次时的种群 随着代数的增加,种群中的个体靠近在一起,且逼近最小值点[0,0]。 8.2.5.7 算法的停止条件 遗传算法使用下列5个条件来确定何时停止: ? Generations(代数)——当产生的代的数目达到规定的代数的值时,算法停止。 ? Time limit(时限)——在运行时间的秒数等于时限时,算法停止。 149 ? Fitness limit(适应度限)——当适应度函数的值对于当前种群的最佳点小于或等于适应度限时,算法停止。 ? Stall generations(停滞代数)——在连续繁殖的时间序列中,若长时间不繁殖新代,亦即目标函数无改进,到达停滞代数规定的代数时,则算法停止。

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com