• 大小: 122KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-05
  • 语言: C/C++
  • 标签: 粒子群  C++  VC  F6函数  

资源简介

有关粒子群算法解决函数优化,Schaffer F6

资源截图

代码片段和文件信息

// pso.cpp : Defines the entry point for the console application.
//

#include “stdafx.h“
#include “PSO.h“
#include 
#include 


//派生自己的PSO类
class MyPSO : public PSO
{
public:
MyPSO(int d int n):PSO(d n){}; //构造函数,给出微粒维数和微粒个数
double GetFit(PARTICLE &p) //适合度计算方法,必须定义
{
//函数:Schaffer‘s F6
double f6;
f6 = 1+0.001*(p.X[0]*p.X[0]+p.X[1]*p.X[1]);
f6 *= f6;
f6 = 0.5-(sin(sqrt(p.X[0]*p.X[0]+p.X[1]*p.X[1]))*
sin(sqrt(p.X[0]*p.X[0]+p.X[1]*p.X[1]))-0.5)/f6;
return f6;
}
};

//定义通讯函数
bool MyCom(double fit double *op double**int)
{
static long sn=1;
cout<<“\rNo=“<for(int i=0; i<2; i++)
cout<<“\tX(“<return true;
}

//申明相关数据
const int PNum = 20; //微粒个数
const int PDim = 2; //微粒维数
double Xup[] = {100 10

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1344  2003-07-08 23:00  vc_pso\pso.cpp

     文件       4558  2003-07-08 23:17  vc_pso\pso.dsp

     文件        531  2003-07-08 23:17  vc_pso\pso.dsw

     文件      58368  2006-07-19 15:36  vc_pso\pso.ncb

     文件        240  2006-07-19 15:36  vc_pso\pso.plg

     文件       1190  2003-07-08 22:37  vc_pso\ReadMe.txt

     文件        290  2003-07-08 22:37  vc_pso\StdAfx.cpp

     文件        769  2003-07-08 22:37  vc_pso\StdAfx.h

     目录          0  2005-10-10 11:31  vc_pso\Debug

     文件       8308  2005-10-12 17:06  vc_pso\pso.h

     文件     365568  2006-07-19 15:36  vc_pso\pso.opt

    ..AD...         0  2003-07-08 23:23  vc_pso

 -rw-r--r--       227  2011-08-12 15:27  readme_verysource.com.txt

----------- ---------  ---------- -----  ----

               441393                    13


评论

共有 条评论