没有合适的资源?快使用搜索试试~ 我知道了~
粒子群算法 C#版本 由C++改编
5星 · 超过95%的资源 需积分: 17 116 下载量 12 浏览量
2011-02-12
17:02:37
上传
评论 2
收藏 7KB TXT 举报
温馨提示
试读
7页
由C++版本的粒子群算法改编成C#版本 已在VS2008中成功运行。不过程序仍有改进的地方。 程序仅供参考使用,请勿作为标准PSO算法看待。
资源推荐
资源详情
资源评论
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PSO_ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
PSO p = new PSO();
p.mains();
System.Console.ReadLine();
}
class PSO
{
const int S = 20; /*试验次数 */
const int G = 2000; /*混合迭代次数*/
const int P = 40; /*个体总数*/
//#define c1 2.0 /*学习因子1*/
//#define c2 2.0 /*学习因子2*/
const int V = 30; /*个体维数*/
const double MAX = 5.12;
const double MIN = -5.12;
double D = MAX; /*蛙跳的最大值*/
int i1, i2, i3, i4;
int try_number = 0;
int try_max = 5;
double R;//0-1之间的随机数,精度为1/10000
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PSO_ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
PSO p = new PSO();
p.mains();
System.Console.ReadLine();
}
class PSO
{
const int S = 20; /*试验次数 */
const int G = 2000; /*混合迭代次数*/
const int P = 40; /*个体总数*/
//#define c1 2.0 /*学习因子1*/
//#define c2 2.0 /*学习因子2*/
const int V = 30; /*个体维数*/
const double MAX = 5.12;
const double MIN = -5.12;
double D = MAX; /*蛙跳的最大值*/
int i1, i2, i3, i4;
int try_number = 0;
int try_max = 5;
double R;//0-1之间的随机数,精度为1/10000
double Wmax = 0.9;
double Wmin = 0.4;
double PI = 3.14159265;
double W = 0.9;
double c1 = 2.0;/*学习因子1*/
double c2 = 2.0;/*学习因子2*/
double Vpso = 0.0;
double Tolerance = 0.0000001;//收敛精度
double c3 = 0.03;//扰动幅度
double e = 2.718281828459;//自然对数底数
int sm = 3;
int bz = 0;//扰动因子标志
public class Individal
{
public double[] d = new double[V];
public double fitness;
}
public class psom
{
public double[] sd = new double[V];
}
public psom[] pso = new psom[P]; /*记录每个离子各位的更新速度*/
public Individal px; /*全体中最好位置*/
public Individal[] individual = new Individal[P]; /*全部个体*/
public Individal[] individuala = new Individal[P]; /*全部个体――备份*/
public Individal tem;
double Wmin = 0.4;
double PI = 3.14159265;
double W = 0.9;
double c1 = 2.0;/*学习因子1*/
double c2 = 2.0;/*学习因子2*/
double Vpso = 0.0;
double Tolerance = 0.0000001;//收敛精度
double c3 = 0.03;//扰动幅度
double e = 2.718281828459;//自然对数底数
int sm = 3;
int bz = 0;//扰动因子标志
public class Individal
{
public double[] d = new double[V];
public double fitness;
}
public class psom
{
public double[] sd = new double[V];
}
public psom[] pso = new psom[P]; /*记录每个离子各位的更新速度*/
public Individal px; /*全体中最好位置*/
public Individal[] individual = new Individal[P]; /*全部个体*/
public Individal[] individuala = new Individal[P]; /*全部个体――备份*/
public Individal tem;
剩余6页未读,继续阅读
NuclearCookies
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页