版块导航
正在加载中...
客户端APP下载
论文辅导
申博辅导
登录
注册
帖子
帖子
用户
本版
应《网络安全法》要求,自2017年10月1日起,未进行实名认证将不得使用互联网跟帖服务。为保障您的帐号能够正常使用,请尽快对帐号进行手机号验证,感谢您的理解与支持!
24小时热门版块排行榜
>
论坛更新日志
(457)
>
虫友互识
(45)
>
休闲灌水
(24)
>
导师招生
(18)
>
硕博家园
(7)
>
论文投稿
(7)
>
招聘信息布告栏
(4)
>
博后之家
(4)
>
留学生活
(4)
>
教师之家
(4)
>
考博
(4)
>
公派出国
(3)
>
考研
(3)
>
功能材料
(2)
>
论文道贺祈福
(2)
>
文献求助
(2)
小木虫论坛-学术科研互动平台
»
计算模拟区
»
程序语言
»
MATLAB/Mathematica
»
Fit(Beta,D,c,m)函数没有定义,能不能在这个基础上定义这个函数!
2
1/1
返回列表
查看: 1211 | 回复: 1
只看楼主
@他人
存档
新回复提醒
(忽略)
收藏
在APP中查看
ele_hnu_li
新虫
(初入文坛)
应助: 0
(幼儿园)
金币: 775.8
帖子: 50
在线: 7.3小时
虫号: 6397390
注册: 2017-04-26
性别: GG
专业: 电力电子学
[
求助
]
Fit(Beta,D,c,m)函数没有定义,能不能在这个基础上定义这个函数!
已有1人参与
CODE:
function [BESTX,BESTY,ALLX,ALLY]=gafcm(K,N,Pm,LB,UB,D,c,m)
%% 此函数实现遗传算法,用于模糊C-均值聚类
% GreenSim团队原创作品,转载请注明
% 欢迎访问GreenSim——算法仿真团队→[url]http://blog.sina.com.cn/greensim[/url]
% 【转载自】[url]http://wenku.baidu.com/view/12c5dcee6294dd88d0d26b1e.html[/url]
%% 输入参数列表
% K 迭代次数
% N 种群规模,要求是偶数
% Pm 变异概率
% LB 决策变量的下界,M×1的向量
% UB 决策变量的上界,M×1的向量
% D 原始样本数据,n×p的矩阵
% c 分类个数
% m 模糊C均值聚类数学模型中的指数
%% 输出参数列表
% BESTX K×1细胞结构,每一个元素是M×1向量,记录每一代的最优个体
% BESTY K×1矩阵,记录每一代的最优个体的评价函数值
% ALLX K×1细胞结构,每一个元素是M×N矩阵,记录全部个体
% ALLY K×N矩阵,记录全部个体的评价函数值
%% 第一步:
M=length(LB);%决策变量的个数
%种群初始化,每一列是一个样本
farm=zeros(M,N);
for i=1:M
x=unifrnd(LB(i),UB(i),1,N);
farm(i,:)=x;
end
%输出变量初始化
ALLX=cell(K,1);%细胞结构,每一个元素是M×N矩阵,记录每一代的个体
ALLY=zeros(K,N);%K×N矩阵,记录每一代评价函数值
BESTX=cell(K,1);%细胞结构,每一个元素是M×1向量,记录每一代的最优个体
BESTY=zeros(K,1);%K×1矩阵,记录每一代的最优个体的评价函数值
k=1;%迭代计数器初始化
%% 第二步:迭代过程
while k<=K
%% 以下是交叉过程
newfarm=zeros(M,2*N);
Ser=randperm(N);%两两随机配对的配对表
A=farm(:,Ser(1));
B=farm(:,Ser(2));
P0=unidrnd(M-1);
a=[A(1:P0,:);B((P0+1):end,:)];%产生子代a
b=[B(1:P0,:);A((P0+1):end,:)];%产生子代b
newfarm(:,2*N-1)=a;%加入子代种群
newfarm(:,2*N)=b;
for i=1:(N-1)
A=farm(:,Ser(i));
B=farm(:,Ser(i+1));
P0=unidrnd(M-1);
a=[A(1:P0,:);B((P0+1):end,:)];
b=[B(1:P0,:);A((P0+1):end,:)];
newfarm(:,2*i-1)=a;
newfarm(:,2*i)=b;
end
FARM=[farm,newfarm];
%% 选择复制
SER=randperm(3*N);
FITNESS=zeros(1,3*N);
fitness=zeros(1,N);
for i=1:(3*N)
Beta=FARM(:,i);
FITNESS(i)=FIT(Beta,D,c,m);
end
for i=1:N
f1=FITNESS(SER(3*i-2));
f2=FITNESS(SER(3*i-1));
f3=FITNESS(SER(3*i));
if f1<=f2&&f1<=f3
farm(:,i)=FARM(:,SER(3*i-2));
fitness(:,i)=FITNESS(:,SER(3*i-2));
elseif f2<=f1&&f2<=f3
farm(:,i)=FARM(:,SER(3*i-1));
fitness(:,i)=FITNESS(:,SER(3*i-1));
else
farm(:,i)=FARM(:,SER(3*i));
fitness(:,i)=FITNESS(:,SER(3*i));
end
end
%% 记录最佳个体和收敛曲线
X=farm;
Y=fitness;
ALLX{k}=X;
ALLY(k,:)=Y;
minY=min(Y);
pos=find(Y==minY);
BESTX{k}=X(:,pos(1));
BESTY(k)=minY;
%% 变异
for i=1:N
if Pm>rand&&pos(1)~=i
AA=farm(:,i);
BB=GaussMutation(AA,LB,UB);
farm(:,i)=BB;
end
end
disp(k);
k=k+1;
end
%% 绘图
BESTY2=BESTY;
BESTX2=BESTX;
for k=1:K
TempY=BESTY(1:k);
minTempY=min(TempY);
posY=find(TempY==minTempY);
BESTY2(k)=minTempY;
BESTX2{k}=BESTX{posY(1)};
end
BESTY=BESTY2;
BESTX=BESTX2;
plot(BESTY,'-ko','MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',2)
ylabel('函数值')
xlabel('迭代次数')
grid on
发自小木虫Android客户端
[
Last edited by jjdg on 2017-7-22 at 23:07
]
回复此楼
» 猜你喜欢
请问有评职称,把科研教学业绩算分排序的高校吗
已经有6人回复
2025冷门绝学什么时候出结果
已经有6人回复
Bioresource Technology期刊,第一次返修的时候被退回好几次了
已经有7人回复
真诚求助:手里的省社科项目结项要求主持人一篇中文核心,有什么渠道能发核心吗
已经有8人回复
寻求一种能扛住强氧化性腐蚀性的容器密封件
已经有5人回复
请问哪里可以有青B申请的本子可以借鉴一下。
已经有4人回复
请问下大家为什么这个铃木偶联几乎不反应呢
已经有5人回复
天津工业大学郑柳春团队欢迎化学化工、高分子化学或有机合成方向的博士生和硕士生加入
已经有4人回复
康复大学泰山学者周祺惠团队招收博士研究生
已经有6人回复
AI论文写作工具:是科研加速器还是学术作弊器?
已经有3人回复
1楼
2017-07-22 16:58:45
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
wuhaigang
木虫
(著名写手)
奋斗的虫虫
应助: 55
(初中生)
金币: 319.9
散金: 2532
红花: 18
帖子: 1043
在线: 551.1小时
虫号: 530526
注册: 2008-03-22
性别: GG
专业: 半导体材料
【答案】应助回帖
★
jjdg: 金币+1, 感谢参与
2017-07-26 11:29:34
最好别,哪怕算法一样,尽量新建个m文件,这样不至于算法都失败啊。
赞
一下
回复此楼
2楼
2017-07-25 20:27:59
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
相关版块跳转
第一性原理
量子化学
计算模拟
分子模拟
仿真模拟
程序语言
我要订阅楼主
ele_hnu_li
的主题更新
2
1/1
返回列表
如果回帖内容含有宣传信息,请如实选中。否则帐号将被全论坛禁言
普通表情
龙
兔
虎
猫
百度网盘
|
360云盘
|
千易网盘
|
华为网盘
在新窗口页面中打开自己喜欢的网盘网站,将文件上传后,然后将下载链接复制到帖子内容中就可以了。
信息提示
关闭
请填处理意见
关闭
确定