optimization method-Genetic Algorithm(实例)
来源:互联网 发布:软件外包 源代码 编辑:程序博客网 时间:2024/05/16 06:54
为了巩固知识,这次使用GA算法求解遗传算法的例子。
首先,我们给遗传算法设定参数如下:
种群大小:2000个
种群代数: 200 代
交叉率: pc=1
变异率: pm=0.1
设定参数后,下面就是我们遗传算法的过程了:
(1)编码
这里我们采用十进制编码,使用随机数w1w2...w102作为染色体,其中 0<wi<1,(i=2,3,..,,101),w1=0,w102=1;每个随机序列都和种群中的一个个体对应。
(2)初始化种群
这里我们利用了经典的近似算法-改良圈算法求得一个较好的初始种群。即对于一个初始圈:
交换u和v之间的顺序,这样新的路径变为:
我们记
,那么
,则以新的路径修改就的路径,直到不能修改为止。
(3)适应度函数
这里我们把目标函数作为适应度函数,即
(4)交叉操作
这里我们的交叉(交配)操作,采用单点交叉,例如我们先选定2个父代个体如下:
我们随机选择第t个基因处为交叉点,从而得到子代,如下图 :
交叉操作的方式很多,我们应该尽量选择好的交叉方式,以保证子代能继承父代的优良特性
(5)变异操作
变异操作时一种实现种群多样性的一种手段,同时也是全局寻优的保证,我们可以按给定的变异率,对选定变异的个体,随机选取三个整数,满足1 < u < v < w < 102,把u,v之间(包括u和v)的基因段插到w后面。
(6)选择
这里我们采用确定性的选择策略,即选择使得目标函数值最小的M个个体进化到下一代,这样可以保证父类的优良特性被保留下来。
下面是运行结果:
0 0
- optimization method-Genetic Algorithm(实例)
- optimization method-Simulated Annealing(实例)
- optimization method-Taboo Search(实例)
- 遗传算法(Genetic Algorithm)
- Genetic Algorithm
- 遗传算法入门(Genetic Algorithm)
- optimization method (理论)
- TSP-Genetic Algorithm
- Genetic Algorithm for VRP
- 遗传算法 Genetic Algorithm
- 基因算法 Genetic Algorithm
- 遗传算法--genetic algorithm
- 遗传算法(Genetic Algorithm)
- 遗传算法Genetic Algorithm
- 遗传算法(Genetic Algorithm)
- Group genetic algorithm
- Optimization Algorithm
- A Simple C# Genetic Algorithm
- OpenERP重载create方法
- 进出队列(含上溢,下溢处理)
- optimization method (理论)
- 1.6.5 图形化编辑器 Graphical Editor
- optimization method-Simulated Annealing(实例)
- optimization method-Genetic Algorithm(实例)
- optimization method-Taboo Search(实例)
- 年轻---多经历是一种财富
- 1.6.6 解释器 Interpreter
- js bom window
- TLD(0)
- 分页存储过程02
- linux2.6驱动编译-常见问题
- TLD(1)