1700530902
1700530903
接下来要讨论的就是应该如何使用三个模式智能地解决具有挑战性的难题。首先,仔细陈述你的问题。其实这是最难的一步。大部分人都试图在不用理解问题是什么的前提下解决问题。第二,通过搜索元素之间的各种组合(比如,对弈中的走步,解决方案中的步骤)的方法,递归性地分析问题的逻辑概要,这样你和你的计算机都有足够的耐心来理清问题的概要。对于潜在方案递归性扩张的最后树叶,应用神经网络对它们进行评估,使用进化算法来决定神经网络的最佳拓扑结构。如果这些都不起作用,那你确实遇上了一个棘手的问题。
1700530904
1700530905
进化算法的“伪代码”
1700530906
1700530907
以下是进化算法的基本模式。进化算法中可能会出现许多变量,系统设计者需要提供一些特定的关键参数和方法,细节如下:
1700530908
1700530909
进化算法
1700530910
1700530911
创立N个解决方案“生物”。每个生物都有:
1700530912
1700530913
·遗传密码——一系列具有问题潜在解决方案特性的数字。数字可以代表关键参数、解决问题的步骤、规则等等
1700530914
1700530915
对于进化的每一代,应该做到以下几步:
1700530916
1700530917
·对于N个解决方案生物,每个都应做到以下几步:
1700530918
1700530919
i)将该解决方案生物的方案(其遗传密码所代表的)运用到问题或模拟环境当中
1700530920
1700530921
ii)给解决方案评级
1700530922
1700530923
·挑选出等级最高的L个解决方案生物,让它在下一代中存活下来
1700530924
1700530925
·淘汰(N–L)个没有存活下来的解决方案生物
1700530926
1700530927
·通过以下方式从L个存活解决方案生物创建(N–L)个解决方案生物:
1700530928
1700530929
i)复制L个存活生物。在每种复制版本中随机引进小的变量
1700530930
1700530931
ii)通过将遗传密码各部分结合起来的方式在L个存活生物中,创建额外的解决方案生物(使用“性”繁殖的方法,或者将染色体各部分结合起来的方法)
1700530932
1700530933
iii)将上述两个步骤结合起来
1700530934
1700530935
·决定是否继续进化:
1700530936
1700530937
改善=这一代中评定等级最高的–上一代中评定等级最高的如果改善<改进限度,则任务完成
1700530938
1700530939
·进化的上一代中,评定等级最高的解决方案生物拥有最佳解决方案。将遗传密码定义的方案运用到问题当中
1700530940
1700530941
关键设计决定
1700530942
1700530943
在上述简单的模式当中,这种进化算法的设计者需要在一开始就决定:
1700530944
1700530945
·关键参数:
1700530946
1700530947
NL
1700530948
1700530949
改善起始线
1700530950
1700530951
·遗传密码中的数字代表了遗传密码中如何计算解决方案
[
上一页 ]
[ :1.700530902e+09 ]
[
下一页 ]