在粒子群优化(PSO)算法中,是否可以使用数据集来初始化粒子的位置,而不是使用统一的随机数?
问问题
302 次
1 回答
1
是的,可以使用数据集值而不是随机初始化来初始化群粒子。您需要从数据集中选择随机样本,并将其分配给群体粒子的位置向量。
群体粒子的初始化
class Particle:
position=[]
velocity=[]
pbest=[]
def __init__(self):
for i in range(rows): // rows is number of sample in your dataset
self.position=Training_dataset[i,:]
self.velocity=np.random.rand(rows,columns)
// columns is number of dimensions or features in dataset
self.pbest=self.position
for i in range(no_of_sample_in_dataset):
p=Particle()
swarm.append(p)
于 2018-03-01T17:02:01.183 回答