粒子群优化约束优化求解器

psoco的Python项目详细描述


粒子群优化约束优化求解器

参数

NameTypeDefault Value
particle_sizeint2000
max_iterint1000
sol_sizeint7
fitnessfunctionnull
constraintsa list of functionsnull

用法

equation

变换约束,它变成:

equation

注:为了更快地搜索最优解,请使用特定的低和高初始化解决方案。在

importpsocoimportmathdefobjective(x):'''create objectives based on inputs x as 2D array'''return(x[:,0]-2)**2+(x[:,1]-1)**2defconstraints1(x):'''create constraint1 based on inputs x as 2D array'''returnx[:,0]-2*x[:,1]+1defconstraints2(x):'''create constraint2 based on inputs x as 2D array'''return-(x[:,0]-2*x[:,1]+1)defconstraints3(x):'''create constraint3 based on inputs x as 2D array'''returnx[:,0]**2/4.+x[:,1]**2-1defnew_penalty_func(k):'''Easy Problem can use \sqrt{k}'''returnmath.sqrt(k)constraints=[constraints1,constraints2,constraints3]num_runs=10# random parameters lead to variations, so run several time to get meanfor_inrange(num_runs):pso=psoco.PSOCO(sol_size=2,fitness=objective,constraints=constraints)pso.h=new_penalty_funcpso.init_Population(low=0,high=1)# x并集的上下限,默认为0和1pso.solve()# best solutionsx=pso.gbest.reshape((1,-1))

参考

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaGCP:一个VM可以位于具有相同地址的不同网络上吗?   java查找安卓中第一个数组的第二个数组中存在的元素的索引   java摄像头活动不工作,设置参数失败   用于python的Base64转换的Java等效代码   为什么JPA/Hibernate在我尝试运行@Query时抛出“java.lang.NegativeArraySizeException:1”?   如何在ubuntu for java的终端上设置路径?   java为什么这两个IP不同?   java JPA:如何将本机查询结果集转换为POJO类集合   java如何在|(12)|(23)中用数字拆分字符串   异常处理如何让程序在达到Java目标后停止运行   java如何不添加以特定字符开头的元素   java如何通过字符串获得swing按钮名称?   java如何在响应不成功时读取改装中的错误体?   java*更新*现在我的程序可以编译但不运行了?