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

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第三方库


热门话题
java重写父类中的特定行   java Apache Commons CLI订购帮助选项?   java如何将数据添加到网格视图   java如何在Apache Camel批处理后移动文件?   java如何为日期范围的between子句编写hql查询?   雅加达ee开始Java编程,我应该从哪里开始?   排序Java8+流:检查我的objectinstances的两个字段的列表顺序是否正确   java如何将json转换为Map<String,Object>确保整数为整数   java不能在Spring数据JPA批处理过程中创建TransactionException   java损坏的PDF文件从FTP下载到使用Apache Common Net的设备   java无法使用Spring批处理和Wso2为XML架构命名空间找到Spring NamespaceHandler   java Android ImageView未显示在SherlockFragment中   Maven在构建时出错=无法识别Java路径   java如何使用批处理文件调用关闭处理程序?   java admob广告横幅重叠我的游戏屏幕安卓