用遗传python算法生成最小的词集
我有一门人工智能课程,我有一个练习,写一个代码,生成尽可能短的句子(以字符数计算),我有一个离开列表用遗传python算法生成最小的词集,python,genetic,Python,Genetic,我有一门人工智能课程,我有一个练习,写一个代码,生成尽可能短的句子(以字符数计算),我有一个离开列表 这只是单词表,没有真正的英语句子。我不需要有一个正确的英语句子 data=[["One","Two","He","You","a"],["have","had","make","do"],["red","blue"]] 我必须使一个句子尽可能少的3个单词(以字符数计),我之前给出的例子的解决方案是“a do red” 这就是我在遗传算法中所做的,我通过修改每一代pop的0.05%来寻找最有价值
这只是单词表,没有真正的英语句子。我不需要有一个正确的英语句子
data=[["One","Two","He","You","a"],["have","had","make","do"],["red","blue"]]
我必须使一个句子尽可能少的3个单词(以字符数计),我之前给出的例子的解决方案是“a do red”
这就是我在遗传算法中所做的,我通过修改每一代pop的0.05%来寻找最有价值的部分
个人是一个句子,群体是一个短语集,我试图生成尽可能小的句子
问题是该值不会更改。提前感谢您的帮助。如果您必须从每个列表中选择一个单词,您可以执行以下操作:
for sublist in data:
print(min(sublist, key=len))
Out [4]:
a
do
red
或者,如果您想要一个字符串作为结果:
" ".join([min(sublist, key=len) for sublist in data])
Out [2]:
'a do red'
请注意,这将从每个列表中选择第一个最短的单词,因此,如果有多个长度最短的单词,则以列表中的第一个为准。与其打印出来,不如将它们添加到新列表中,或者根据您的用例执行其他操作。英语句子以大写字母开头,需要动词和主语。是的,对不起,我编辑了,解决方案是“a do red”,我不需要正确的句子。只是单词表没有真正的英语句子“a do red”也不是一个有效的英语句子。只是单词表没有真正的英语句子。我不需要有一个正确的英语句子来缩小你的问题