如何从遗传算法(genalg)中获得最佳解决方案

irl*_*aks 3 r genetic-algorithm

我正在使用genalg包进行遗传算法.基因是二元是自然的,结果将指定

基因的长度是269,很难理解哪个是难以理解的.有没有办法从中提取结果并将其放在数据框中?

cat(summary.rbga(GAmodel))

GA Settings
Type                  = binary chromosome
Population size       = 100
Number of Generations = 100
Elitism               = TRUE
Mutation Chance       = 0

Search Domain
Var 1 = [,]
Var 0 = [,]

GA Results
Best Solution : 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 
Run Code Online (Sandbox Code Playgroud)

我想将最佳解决方案转换为数据框,以便我可以实际查找哪些是我需要选择的项目.

class(GAmodel) = "rbga"
Run Code Online (Sandbox Code Playgroud)

小智 5

对于最小化优化求解为变量GAModel

bestSolution<-GAmodel$population[which.min(GAmodel$evaluations),]
Run Code Online (Sandbox Code Playgroud)

这基于适应度函数从GA模型$评估中提取最佳染色体的索引.然后使用该指数返回评估的最后一个群体的完整染色体.