首页教程使用技巧正文

遗传字符串算法题,遗传算法群体大小字符串长度怎么确定

发布时间:2024-05-30 15:21:38 来源:其它 作者:未知

1,遗传算法群体大小字符串长度怎么确定

1,遗传算法群体大小字符串长度怎么确定

是说一个染色体中的基因个数吗?这个要完全根据你题目的实际情况来定啊首先你拿什么作为编码,也就是说你想在遗传算法的过程中改进什么决策变量?一般来讲,编码定下来后,长度应该自然就确定了啊

如果还不明白的话,可否大致叙述一下模型和算法?或许可以帮忙看看

如果单纯比较长度,直接调用类似于strlen()之类的函数就可以,加以比较即可.如果比较字符串的大小,则比较的是字符的ASCII编码的大小.你搜索一下ASCII码表就可以得知每一个ASCII字符的大小.

我不会但还是要微笑:)

2,问一个遗传算法的问题,算出了染色体串位个数比如是15位,但如何计...

2,问一个遗传算法的问题,算出了染色体串位个数比如是15位,但如何计...

染色体是二进制编码吗?如果是二进制编码,15位的染色体本身就是二进制

设第n代中有且仅有m条染色体的概率为a(n,m)(n为下标,m为上标),则a(n,m)看分为如下几类:

(1)第n-1代中有且仅有m条染色体的,概率为a(n-1,m)*(1/2)^m

(2)第n-1代中有且仅有m+1条染色体的,概率为a(n-1,m+1)*c(m+1,m)*(1/2)^(m+1)(其中c(m+1,m)表示从m+1条染色体中任意选m条的组合数,下同)

(3)第n-1代中有且仅有m+2条染色体的,概率为a(n-1,m+2)*c(m+2,m)*(1/2)^(m+2)

(4)第n-1代中有且仅有i条染色体的,概率为a(n-1,i)*c(i,m)*(1/2)^i(其中m≤i≤23)

故a(n,m)a(n-1,m)*(1/2)^m+a(n-1,m+1)*c(m+1,m)*(1/2)^(m+1)+a(n-1,m+2)*c(m+2,m)*(1/2)^(m+2)+..+a(n-1,i)*c(i,m)*(1/2)^i(其中m≤i≤23)

,其中a(1,23)1,

这是递推公式,由此可求得第n代中有且仅有m条染色体的概率为a(n,m)(通项公式太复杂,你可以固定m,求出a(n,m)的通项公式

文章TAG: 字符串 遗传算法 长度 算法 群体 确定 遗传字符串算法题

还没有评论,快来抢沙发吧!

最新发现

相关资讯

新闻热榜

热门游戏

精彩专题