💥1 概述
遗传算法(Genetic Algorithm,GA)最早是由美国的 John holland于20世纪70年代提出,该算法是根据大自然中生物体进化规律而设计提出的。是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。该算法通过数学的方式,利用计算机仿真运算,将问题的求解过程转换成类似生物进化中的染色体基因的交叉、变异等过程。在求解较为复杂的组合优化问题时,相对一些常规的优化算法,通常能够较快地获得较好的优化结果。遗传算法已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。
📚2 运行结果
🎉3 参考文献
[1]胡大伟,陈诚.遗传算法(GA)和禁忌搜索算法(TS)在配送中心选址和路线问题中的应用[J].系统工程理论与实践,2007(09):171-176.
👨💻4 Matlab代码
主函数部分代码:
load 'RAW.mat'; [m n] = size(RAW); %m样本数,n维数 R = randperm(m); %1到m这些数随机打乱得到的一个随机数字序列作为索引 RAWtest = RAW(R(1:100),:); %以索引的前100行作为测试样本RAWtest R(1:100) = []; %空中括号表示删去 RAWtraining = RAW(R,:); %剩下的数据作为训练样本RAWtraining dataset=RAWtraining; %a=gaplsopt(dataset,1); % e=gaplsopt(dataset,2); [b,c,d]=gaplssp(dataset,100);