遗传算法
遗传算法是随机束搜索的一个变型,它通过把两个父状态结合来生成后继,而不是通过修改单一状态进行。
设计思路
运行结构
总结
| 搜索方式 |
优点 |
缺点 |
| 爬山搜索 |
1·简单,效率高 |
1·一旦达到局部最大,算法就会停止。 2·一旦搜索到达平顶,搜索无法确定搜索的最佳方向。 3·山脊的顶部到山峰之间可能倾斜得很平缓,搜索的前进步伐会很小。 |
| 模拟退火搜索 |
1·局部搜索能力强,运行时间较短。 |
1·全局搜索能力差,容易受参数的影响 |
| 宽度优先搜索 |
1·速度快,有利于解决最短路径和最少问题 |
内存消耗大 |
| 深度优先搜索 |
1·能找出所有解决方案 2·相比广度内存消耗相对较小 |
时间消耗大,效率不高
|
| 遗传算法 |
1·有助于模拟生物遗传进化过程,方便遗传操作算子 2·直接以目标函数值作为搜索信息,具有高度的优越性 3·具有群体搜索特征,可以有效避免搜索不必要的点 4·有较好的全局搜索性和并行性,可避免局部极大值 5·基于概率规则,非确定性规则,使用概率机制进行迭代,具有随机性,使搜索更灵活,参数对搜索的影响更小。 6·具有可扩展性。 |
1·实现比较复杂,增加工作量和求解时间。搜索速度较慢,需要较多的训练时间 2·算法对初始种群的选择具有一定的依赖性。参数选择大部分依靠经验,编码容易出现不规范不准确的问题。 3·容易出现过早收敛问题 4·并行机制潜在能力没有得到充分利用(研究热点方向)。 |