一个 遗传算法源程序
遗传算法实例
也是自己找来的,原代码有少许错误,本人都已更正了,调试运行都通过了的。
对于初学者,尤其是还没有编程经验的非常有用的一个文件
遗传算法实例
下面举例说明遗传算法
求下列函数的最大值
将 的值用一个 位的二值形式表示为二值问题,一个 位的二值数提供的分辨率
是每为 !"#。
将变量域 离散化为二值域 $ $其中 是 $
中的一个二值数。
编程
# 初始化编码
%%# 函数的功能是实现群体的初始化,%%&' 表示群体的大小,
()'*( 表示染色体的长度二值数的长度,
长度大小取决于变量的二进制编码的长度在本例中取 位。
遗传算法子程序
+'%%#
初始化
,%%%%%%&'()'*(-
%%),.).%%&'()'*(/). 随机产生每个单元为 01行数
为 %%&',列数为 ()'*( 的矩阵,
),. 对矩阵的每个单元进行圆整。这样产生的初始种群。
# 计算目标函数值
# #将二进制数转化为十进制数
遗传算法子程序
+'.'.')2#
产生 ! !###的行向量,然后求和,将二进制转化为十进制
,%% .'.')2%%
%%2&'%%/求 %% 行和列数
)%2