Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 广告与招聘
广告与招聘 这里是发招聘信息和广告的地方
回复
 
主题工具 显示模式
旧 2010-03-06, 17:32   #1
greensim
普通会员
 
注册日期: 2008-10-06
年龄: 25
帖子: 53
声望力: 18
greensim 正向着好的方向发展
默认 【原创】异构计算系统中基于遗传算法的任务分配与调度

异构计算系统是包含一组相异系统结构的机器连接机器的高速互连网络通信协议操作系统和相关开发环境等的集成计算系统,为了更好地利用异构计算系统的优势,可将一个大的任务分解为若干子任务,每个子任务内部包含的计算是同类性质的。而不同的子任务之间可能是不同类型的计算,需要不同系统结构的机器。任务分解完成后的工作是任务分配和任务调度,分别是将子任务分配给合适的机器,对每个机器上的子任务和机器间的数据传输进行调度。本源码由GreenSim团队原创,转载请注明,有意购买源码或代写相关程序,请与GreenSim团队联系。

function [BestX1,BestX2,BestY,AllFarm1,AllFarm2,LC1,LC2]=GSA(M,N,Pm,Pd,K,t0,alpha,TaskP,Theta,Phi)
%% 异构计算系统中的任务分配与调度问题的遗传算法通用MATLAB函数
% GreenSim团队原创作品,转载请注明
% 欢迎访问GreenSim——算法仿真团队→http://blog.sina.com.cn/greensim
%% 输入参数列表
% M------------遗传算法进化代数
% N------------种群规模,取偶数
% Pm-----------变异概率调节参数
% Pd-----------变异程度调节参数,0<Pd<1,越大,变异的基因位越多
% K------------同一温度下状态跳转次数
% t0-----------初始温度
% alpha--------降温系数
% TaskP--------任务优先矩阵,m×m矩阵,TaskPij=1表示任务i需在j之前完成,TaskPij=0时任务i和j没有优先关系
% Theta--------任务执行时间矩阵,m×n矩阵,Thetaij表示任务i在处理机j上的执行时间
% Phi----------任务之间数据传输时延矩阵,m×m矩阵,Phiij表示任务i与任务j之间的数据传输时延
%% 输出参数列表
% BestX1--------最好个体的编码的分配部分
% BestX2--------最好个体的编码的调度部分
% BestY---------最好个体的目标函数值
% LC1-----------最优个体适应值的收敛曲线,M×1
% LC2-----------种群平均适应值的收敛曲线,M×1
% AllFarm1------分配部分各代种群的集合,M×1的细胞结构
% AllFarm2------调度部分各代种群的集合,M×1的细胞结构

%% -----------------------初始化----------------------------------
[m,n]=size(Theta);
[AA,BB]=QJHJ(TaskP);%调用子函数,建立每一个任务的前任务集和后任务集
[farm1,farm2]=Initialization(N,TaskP,AA,BB,n);%调用子函数,种群初始化
%输出参数初始化
BestX1=zeros(1,m);
BestX2=zeros(1,m);
BestY=inf;
LC1=zeros(M,1);
LC2=zeros(M,1);
AllFarm1=cell(M,1);
AllFarm2=cell(M,1);
%控制参数初始化
mm=1;%迭代计数器
t=t0;%温度指示器
BestPos=1;%初始时任意指定被保护个体

%% -----------------------迭代过程---------------------------------
while mm<=M%设置停止条件
%% ----------------------变异退火算子------------------------------
for i=1:N
if rand>Pm&&i~=BestPos
%如果随机数大于变异概率门限值,并且不属于保护个体,就对其实施变异
X1=farm1(i,:);%取出该个体
X2=farm2(i,:);
k=1;
while k<=K%每一个温度下的状态转移次数
%调用变异子函数
[Y1,Y2]=Mutation(X1,X2,Pd,AA,BB,n);
%调用计算适应值子函数
%[YI,ZI,FI,TGWI,VGWI,f1I,f2I]=Fitness(I,TaskT,TaskV,RT,RV);
%[YJ,ZJ,FJ,TGWJ,VGWJ,f1J,f2J]=Fitness(J,TaskT,TaskV,RT,RV);
[St,Ft,ZB]=Fitness(Y1,Y2,TaskP,Theta,Phi);
if ZB<ZA
farm1(i,:)=Y1;
farm2(i,:)=Y2;
elseif rand<exp((ZA-ZB)/(ZA*t))
farm1(i,:)=Y1;
farm2(i,:)=Y2;
else
farm1(i,:)=X1;
end
k=k+1;
end
end
end


%% -----------------------交叉算子---------------------------------
newfarm1=zeros(size(farm1));
newfarm2=zeros(size(farm2));
Ser=randperm(N);%用这个函数保证随机配对
for i=1:2:(N-1)
FA1=farm1(Ser(i),:);
FB1=farm1(Ser(i+1),:);
FA2=farm2(Ser(i),:);
FB2=farm2(Ser(i+1),:);
[SA1,SB1,SA2,SB2]=CrossOver(FA1,FB1,FA2,FB2);
newfarm1(i+1,:)=SB1;
newfarm2(i,:)=SA2;
newfarm2(i+1,:)=SB2;
end
%新旧种群合并
FARM1=[farm1;newfarm1];
FARM2=[farm2;newfarm2];

%% -----------------------选择复制---------------------------------
FIT_Y=zeros(2*N,1);
fit_Y=zeros(N,1);
for i=1:(2*N)
X1=FARM1(i,:);
X2=FARM2(i,:);
%[Y,Z,F,TGW,VGW,f1,f2]=Fitness(XX,TaskT,TaskV,RT,RV);
[St,Ft,Y]=Fitness(X1,X2,TaskP,Theta,Phi);
FIT_Y(i)=Y;
end
Ser=randperm(2*N);
for i=1:N
ff1=FIT_Y(Ser(2*i-1));
ff2=FIT_Y(Ser(2*i));
if ff1<=ff2
farm1(i,:)=FARM1(Ser(2*i-1),:);
farm2(i,:)=FARM2(Ser(2*i-1),:);
fit_Y(i)=FIT_Y(Ser(2*i-1));
else
farm1(i,:)=FARM1(Ser(2*i),:);
farm2(i,:)=FARM2(Ser(2*i),:);
fit_Y(i)=FIT_Y(Ser(2*i));
end
end

%% -----------------------记录与更新-------------------------------
minY=min(fit_Y);
meanY=mean(fit_Y);
LC1(mm)=minY;
LC2(mm)=meanY;
pos=find(fit_Y==minY);
BestPos=pos(1);
BestX1=farm1(BestPos,:);
BestX2=farm2(BestPos,:);
BestY=fit_Y(BestPos);
AllFarm1{mm}=farm1;
AllFarm2{mm}=farm2;
disp(mm);
mm=mm+1;
t=t*alpha;
end
上传的图像
文件类型: jpg 031附图1.JPG (26.6 KB, 2 次查看)
文件类型: jpg 031附图2.JPG (37.4 KB, 2 次查看)
__________________
算法设计、代写程序,欢迎访问GreenSim团队主页→
http://blog.sina.com.cn/greensim
greensim 当前离线   回复时引用此帖
旧 2010-08-16, 19:27   #2
pearlove2
初级会员
 
注册日期: 2010-07-13
帖子: 3
声望力: 0
pearlove2 正向着好的方向发展
默认 heaven

To live on earth as in heaven. -------------------------------------------------------------------------------Jewelry fittings
pearlove2 当前离线   回复时引用此帖
旧 2010-11-21, 17:25   #3
getshoes96t
初级会员
 
注册日期: 2010-11-21
年龄: 43
帖子: 1
声望力: 0
getshoes96t 正向着好的方向发展
默认 回复: 【原创】异构计算系统中基于遗传算法的任务分配与调度

Nike SB Dunk
Just earlier to we officially celebrated the brand new year, we obtained a show up at a Nike Dunk large developed for the female sneakerheads looking for to celebrate Valentine&rsquo;s day. Now Nike SB Dunk Low Womens, it is the turn belonging toward the Nike oxygen Force one to be a member of the celebration.
The upper is definitely covered in red Nike Dunks High, with premium leather-based inside the toe box and mid & back again panels. Then Nike SB Dunk High Mens, patent leather-based could possibly be observed inside the Nike swoosh collectively with inside the heel tab, shoe laces area, and the front panel- in which what appears like a safari print may be also located.
getshoes96t 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 19:13


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.