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