【发布时间】:2013-07-29 22:19:00
【问题描述】:
我想编写一个遗传算法来解码用替换密码编码的字符串。输入将是一串从 a 到 z 的小写字符和空格字符,它们不会被编码。例如,
uyd zjglk brsmh osc tjewn spdr uyd xqia fsv
是一个有效的编码
the quick brown fox jumps over the lazy dog
注意空格字符没有被编码。
基因将是一对一的随机字符映射。
为了确定一个基因(或映射)的适应度,将要解码的字符串应用到这个映射中,并计算结果中识别出的英文单词的数量。
当输入字符串中的所有单词都是有效的英文单词时,算法终止。
我不想使用其他技术,例如频率分析。
这行得通吗?关于性能可以说什么?
【问题讨论】:
-
好吧,蛮力方法会奏效,但顾名思义,它不会是一种有效的方法。添加频率分析会在实际案例中修剪掉很多额外的脂肪分支,而理论上可以证明有些案例频率分析不会做得更好
标签: algorithm encryption genetic-algorithm