نمايش پست تنها
قديمي ۰۲-۲۵-۱۳۹۳, ۰۷:۱۹ بعد از ظهر   #3 (لینک دائم)
mahdi053 Male
عضو فوق فعال
 
آواتار mahdi053
 
تاريخ عضويت: بهمن ۱۳۹۰
پست ها: 38
تشكرها: 9
13 تشكر در 13 پست
پيش فرض

سلام
من از این یه تیکه برای چرخ رولت استفاده می کنم. امیدوارم بتونه کمکت کنه.
%% CrossOver
NCost = max(Cost) + 10 - Cost; % Normalized Cost
Cost2 = NCost;

cdfCost2 = Cost2(1); %Cumulative Distribution Function
for ii = 2:PopSize
cdfCost2(ii) = cdfCost2(ii-1) + Cost2(ii);
end

SelectedM = []; % Select Parents
for gg = 1:PopSize;
aa = randi([1,max(cdfCost2)],1);
iii=0;
for ggg=1:PopSize;
if cdfCost2(ggg) >= aa && iii==0;
Selected=ggg;
SelectedM = [SelectedM ; Selected];
iii=1;
end
end
end
mahdi053 آفلاين است   پاسخ با نقل قول
از mahdi053 تشكر كرده است:
soft92 (۰۲-۲۸-۱۳۹۳)