?? initpop.m
字號:
% 2.1初始化(編碼)
% initpop.m函數的功能是實現群體的初始化,popsize表示群體的大小,chromlength表示染色體的長度(二值數的長度),
% 長度大小取決于變量的二進制編碼的長度(在本例中取10位)。
%遺傳算法子程序
%Name: initpop.m
%初始化
function pop=initpop(popsize,chromlength)
%pop=round(rand(popsize,chromlength)); % rand隨機產生每個單元為 {0,1} 行數為popsize,列數為chromlength的矩陣,
%round對矩陣的每個單元進行圓整。這樣產生的初始種群。
%因為要產生的群體染色體單元儲存的就是一張課表,而一張課表的信息量就有161*40*27個元素,這已經遠遠朝超出了rand的計算范圍,因此將數字矩陣轉
%化為字符矩陣,組建染色體
for i=1:popsize
for j=1:chromlength
rand1=rand;
rand2=rand;
if rand1<rand2
pop(i,j)=['1'];
else
pop(i,j)=['0'];
end
end
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -