📄 pso.h
字号:
#ifndef PSO_H
#define PSO_H
class PARTICLE
{
public:
double *X; //微粒的位置数组
double *V; //微粒的速度数组
double *pbest;
int Dim; //微粒的维数
double Fit; //微粒适应度
double BestFit;
PARTICLE();
PARTICLE(int n); //维数为参数的构造函数
~PARTICLE();
void SetDim(int d); //设置微粒的维数
};
//定义群粒子类
class PSO
{
private:
PARTICLE *Particle; //微粒群数组
int PNum; //微粒个数
int GBestIndex; //最好微粒索引
double W;
double C1;
double C2;
double Xmax; //微粒坐标上界数组
double Vmax; //微粒最大速度数 //通讯函数,返回值为false时,系统停止优化
public:
PSO();
PSO(int dim, int num);
~PSO();
void Initialize(); //初始化群体
void ParticleFly(); //微粒飞翔,产生新一代微粒
void SetW(double w) {W = w;};
void SetC1(double c) {C1 = c;};
void SetC2(double c) {C2 = c;};
void SetXmax(double xmax) {Xmax = xmax;};
void SetVmax(double vmax) {Vmax = vmax;};
double GetFit(PARTICLE &);
PARTICLE& Run(int MaxNum);
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -