编程语言
首页 > 编程语言> > python – 实数的染色体表示?

python – 实数的染色体表示?

作者:互联网

我正在尝试使用遗传算法解决问题.

问题是找到优化函数的整数和实数值集.

我需要使用二进制字符串来表示问题(仅仅因为我理解交叉/变异等概念在应用于二进制字符串染色体时更好).

候选解决方案S将是集合{I1,I2,… IN,R1,R2,RM}

其中I变量是整数,R变量是浮点数.

我希望能够将候选解决方案S转换为二进制字符串,但我不知道如何编码浮点数.

关于如何将集合S编码到染色体中的任何想法?

尽管该解决方案应该是语言无关的,但我首选的语言选择(按此优先级顺序递减)是:

Python,C,C

顺便说一句,我正在使用Pyevolve编码问题

解决方法:

不,我认为二进制表示对您的问题是错误的.你的基本数据不是二进制的,那么,为什么要使用二进制?对实数和整数进行变异和交叉,而不是二进制表示.

最简单的交叉:第一个父:ABCDE,其中A,B,…是浮点数,第二个父MNOPQ.随机选择D,第一个春天:ABCDQ,第二个:MNOPE.

标签:python,genetic-algorithm
来源: https://codeday.me/bug/20190705/1383393.html