使用矩阵作为Platypus MOEA的输入

时间:2017-10-19 17:24:50

标签: python optimization genetic-algorithm platypus-optimizer

我是面向对象编程和优化的新手,由于Platypus缺乏适当的文档,我不得不问这个问题。我试图在Platypus上使用NSGAII来实现翼型优化的最大化问题。我的初始人口是一个数组(比如[100 x 13])。我需要使用我的评估函数来评估数组的每一行 任何寻找有用文档或解决方案的线索都表示赞赏。 提前致谢。

1 个答案:

答案 0 :(得分:0)

from platypus import Problem, Real, NSGAII

def objectiveFunction()
  ....

  return result

problem = Problem(2, 1) # 2 is number of inputs 1 is number of objectives
problem.types[:] = Real(0, 10) # min and max initial guses
problem.function = objectiveFunction
problem.directions[:] = Problem.Maximize

algorithm = NSGAII(problem, 250) # 250 is the pupulation size
algorithm.run(500) # 500 is the number of function evaluation
result = algorithm.result

#to print the result
for ind, solution in enumerate(algorithm1.result):
    print(ind+1, solution.objectives[0])

希望这会有所帮助