• 大小: 4KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-02
  • 语言: Python
  • 标签: PSO  Python  

资源简介

自己手撸Python版pso算法代码,自己手写一遍有不同收获!

资源截图

代码片段和文件信息

# coding=utf-8
import random
import math
maxiter=300
popnum=30
vardim=3
lowbound=[000]
uppbound=[101010]
k=0.4

def initialv(m=popnumn=vardim):
    v=[[0]*n for i in range(m)]
    global vminvmax
    vmax=[k*(uppbound[i]-lowbound[i]) for i in range(vardim)]
    vmin=[-l for l in vmax]
    for i in range(m):
        for j in range(n):
            v[i][j]=random.uniform(vmin[j]vmax[j])
    return v
    
def function(x):
    n=len(x)
    y=[0]*n
    for i in range(1n):
        y[i]=pow(x[i][0]2)+pow(x[i][1]3)-pow(x[i][2]3)
    return y

def caidian(m=popnumn=vardim):
    initialsamples=[[0]*n for i in range(m)]
    for i in range(m):
        for j in range(n):
            initialsamples[i][j]=random.uniform(lowbound[j]uppbound[j])
    return initia

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        2858  2018-05-28 15:33  cpsopy\cpso.py
     文件        3219  2018-05-28 15:37  cpsopy\cpso.pyc
     文件        9805  2018-05-28 15:37  cpsopy\data.txt
     文件          37  2018-05-28 15:37  cpsopy\test1.py
     目录           0  2018-05-28 15:37  cpsopy\

评论

共有 条评论