亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ranking.m

?? GA遺傳算法的工具箱
?? M
字號:
% RANKING.M      (RANK-based fitness assignment)
%
% This function performs ranking of individuals.
%
% Syntax:  FitnV = ranking(ObjV, RFun, SUBPOP)
%
% This function ranks individuals represented by their associated
% cost, to be *minimized*, and returns a column vector FitnV
% containing the corresponding individual fitnesses. For multiple
% subpopulations the ranking is performed separately for each
% subpopulation.
%
% Input parameters:
%    ObjV      - Column vector containing the objective values of the
%                individuals in the current population (cost values).
%    RFun      - (optional) If RFun is a scalar in [1, 2] linear ranking is
%                assumed and the scalar indicates the selective pressure.
%                If RFun is a 2 element vector:
%                RFun(1): SP - scalar indicating the selective pressure
%                RFun(2): RM - ranking method
%                         RM = 0: linear ranking
%                         RM = 1: non-linear ranking
%                If RFun is a vector with length(Rfun) > 2 it contains
%                the fitness to be assigned to each rank. It should have
%                the same length as ObjV. Usually RFun is monotonously
%                increasing.
%                If RFun is omitted or NaN, linear ranking
%                and a selective pressure of 2 are assumed.
%    SUBPOP    - (optional) Number of subpopulations
%                if omitted or NaN, 1 subpopulation is assumed
%
% Output parameters:
%    FitnV     - Column vector containing the fitness values of the
%                individuals in the current population.
%                
%
% Author:     Hartmut Pohlheim (Carlos Fonseca)
% History:    01.03.94     non-linear ranking
%             10.03.94     multiple populations
%             21.01.03     updated for MATLAB v6 by Alex Shenfield

function FitnV = ranking(ObjV, RFun, SUBPOP);

% Identify the vector size (Nind)
   [Nind,ans] = size(ObjV);

   if nargin < 2, RFun = []; end
   if nargin > 1, if isnan(RFun), RFun = []; end, end
   if prod(size(RFun)) == 2,
      if RFun(2) == 1, NonLin = 1;
      elseif RFun(2) == 0, NonLin = 0; 
      else error('Parameter for ranking method must be 0 or 1'); end
      RFun = RFun(1);
      if isnan(RFun), RFun = 2; end
   elseif prod(size(RFun)) > 2,
      if prod(size(RFun)) ~= Nind, error('ObjV and RFun disagree'); end
   elseif prod(size(RFun)) < 2, NonLin = 0;   
   end

   if nargin < 3, SUBPOP = 1; end
   if nargin > 2,
      if isempty(SUBPOP), SUBPOP = 1;
      elseif isnan(SUBPOP), SUBPOP = 1;
      elseif length(SUBPOP) ~= 1, error('SUBPOP must be a scalar'); end
   end

   if (Nind/SUBPOP) ~= fix(Nind/SUBPOP), error('ObjV and SUBPOP disagree'); end
   Nind = Nind/SUBPOP;  % Compute number of individuals per subpopulation
   
% Check ranking function and use default values if necessary
   if isempty(RFun),
      % linear ranking with selective pressure 2
         RFun = 2*[0:Nind-1]'/(Nind-1);
   elseif prod(size(RFun)) == 1
      if NonLin == 1,
         % non-linear ranking
         if RFun(1) < 1, error('Selective pressure must be greater than 1');
         elseif RFun(1) > Nind-2, error('Selective pressure too big'); end
         Root1 = roots([RFun(1)-Nind [RFun(1)*ones(1,Nind-1)]]);
         RFun = (abs(Root1(1)) * ones(Nind,1)) .^ [(0:Nind-1)'];
         RFun = RFun / sum(RFun) * Nind;
      else
         % linear ranking with SP between 1 and 2
         if (RFun(1) < 1 | RFun(1) > 2),
            error('Selective pressure for linear ranking must be between 1 and 2');
         end
         RFun = 2-RFun + 2*(RFun-1)*[0:Nind-1]'/(Nind-1);
      end
   end;

   FitnV = [];

% loop over all subpopulations
for irun = 1:SUBPOP,
   % Copy objective values of actual subpopulation
      ObjVSub = ObjV((irun-1)*Nind+1:irun*Nind);
   % Sort does not handle NaN values as required. So, find those...
      NaNix = isnan(ObjVSub);
      Validix = find(~NaNix);
   % ... and sort only numeric values (smaller is better).
      [ans,ix] = sort(-ObjVSub(Validix));

   % Now build indexing vector assuming NaN are worse than numbers,
   % (including Inf!)...
      ix = [find(NaNix) ; Validix(ix)];
   % ... and obtain a sorted version of ObjV
      Sorted = ObjVSub(ix);

   % Assign fitness according to RFun.
      i = 1;
      FitnVSub = zeros(Nind,1);
      for j = [find(Sorted(1:Nind-1) ~= Sorted(2:Nind)); Nind]',
         FitnVSub(i:j) = sum(RFun(i:j)) * ones(j-i+1,1) / (j-i+1);
         i =j+1;
      end

   % Finally, return unsorted vector.
      [ans,uix] = sort(ix);
      FitnVSub = FitnVSub(uix);

   % Add FitnVSub to FitnV
      FitnV = [FitnV; FitnVSub];
end

% End of function

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品久久99久久在免费线 | 亚洲一区二区免费视频| 一区在线观看视频| 国产精品电影一区二区| 国产精品第一页第二页第三页| 国产精品拍天天在线| 国产精品水嫩水嫩| 亚洲人成网站精品片在线观看| 亚洲欧洲中文日韩久久av乱码| 亚洲日本va午夜在线影院| 亚洲视频网在线直播| 亚洲综合一区二区三区| 亚洲成av人在线观看| 日韩成人午夜精品| 另类小说综合欧美亚洲| 国产精品99久久久久久有的能看| 国产精品亚洲一区二区三区妖精| 国产乱子伦视频一区二区三区 | 97国产一区二区| 色一情一伦一子一伦一区| 在线中文字幕不卡| 在线电影欧美成精品| 久久综合久久综合久久综合| 中文字幕欧美国产| 一区二区三区毛片| 日本不卡在线视频| 国产高清成人在线| 一本久久a久久精品亚洲| 欧美三级电影在线看| 日韩免费视频线观看| 久久久久久亚洲综合影院红桃| 国产精品乱码一区二三区小蝌蚪| 亚洲精选在线视频| 久久精品噜噜噜成人88aⅴ| 成人永久aaa| 欧美性猛交一区二区三区精品| 欧美电影免费观看高清完整版在线| 国产午夜久久久久| 亚洲一区视频在线| 国产麻豆精品在线| 欧美三区在线观看| 亚洲一区在线电影| 欧美aaaaaa午夜精品| 成人午夜视频在线观看| 欧美三级日韩三级| 国产欧美精品区一区二区三区| 一区二区三区免费看视频| 久久99久久99小草精品免视看| 北岛玲一区二区三区四区| 欧美电影一区二区三区| 国产精品福利影院| 美女精品自拍一二三四| av激情综合网| 久久综合九色综合欧美98| 一区二区在线观看不卡| 国产一区二区三区精品欧美日韩一区二区三区 | 国产精品一区二区果冻传媒| 欧美色综合网站| 国产欧美日韩在线看| 日韩福利视频网| 99亚偷拍自图区亚洲| 精品少妇一区二区三区在线视频| 亚洲欧洲制服丝袜| 成人午夜视频网站| 欧美成人三级在线| 天天射综合影视| 日本精品裸体写真集在线观看| 久久久亚洲精品一区二区三区 | 成人精品高清在线| 日韩欧美高清在线| 亚洲成av人**亚洲成av**| 99久久夜色精品国产网站| 精品日韩av一区二区| 五月天激情小说综合| 色婷婷久久久亚洲一区二区三区| 国产欧美精品日韩区二区麻豆天美| 免费欧美日韩国产三级电影| 欧美丝袜丝交足nylons图片| ㊣最新国产の精品bt伙计久久| 国产精品资源在线看| 日韩一区和二区| 日韩精品成人一区二区三区| 色国产精品一区在线观看| 国产精品久久久久影院老司| 国产成人精品1024| 国产亚洲欧美一区在线观看| 久久精品国产成人一区二区三区| 欧美精品在线观看播放| 亚洲午夜av在线| 91久久精品一区二区三| 一区二区三区在线免费播放 | 国产精品久久久久aaaa樱花| 国产精品18久久久久| 久久亚洲精品小早川怜子| 久久超碰97中文字幕| 欧美一区二区三区四区视频| 偷窥少妇高潮呻吟av久久免费| 欧美在线观看一二区| 亚洲黄色小说网站| 91豆麻精品91久久久久久| 夜夜嗨av一区二区三区四季av| 色综合久久久久久久| 亚洲免费在线电影| 色婷婷av一区二区三区之一色屋| 亚洲桃色在线一区| 色综合天天综合网天天看片| 亚洲日本成人在线观看| 91激情在线视频| 亚洲国产成人av网| 欧美日韩电影一区| 人人超碰91尤物精品国产| 日韩一区二区免费在线观看| 久久国内精品自在自线400部| 精品精品国产高清一毛片一天堂| 黑人巨大精品欧美一区| 国产喷白浆一区二区三区| 99久免费精品视频在线观看| 亚洲欧美日韩电影| 欧美三级电影精品| 日韩不卡在线观看日韩不卡视频| 日韩一区二区三免费高清| 国产精品自拍网站| 国产精品每日更新在线播放网址| 91视频国产观看| 天天操天天综合网| 久久夜色精品一区| 色综合色狠狠天天综合色| 亚洲高清不卡在线| 欧美精品一区二区久久婷婷| 成人精品鲁一区一区二区| 一区二区视频在线| 日韩视频在线观看一区二区| 国产福利91精品| 亚洲乱码国产乱码精品精小说| 欧美日韩国产另类不卡| 精品午夜一区二区三区在线观看| 国产精品欧美一区二区三区| 欧美性猛片xxxx免费看久爱| 久久成人久久爱| 亚洲日本va午夜在线影院| 日韩一区和二区| 成人高清在线视频| 手机精品视频在线观看| 亚洲国产高清在线观看视频| 欧美色视频在线观看| 韩国午夜理伦三级不卡影院| 亚洲女人****多毛耸耸8| 欧美xxxxxxxx| 日本福利一区二区| 国产麻豆视频一区| 亚洲国产精品嫩草影院| 久久久久久99精品| 91久久精品日日躁夜夜躁欧美| 精品一区二区三区在线播放视频| 综合分类小说区另类春色亚洲小说欧美| 欧美男人的天堂一二区| 国产精品一级片| 午夜欧美电影在线观看| 欧美国产禁国产网站cc| 欧美男男青年gay1069videost| 成人午夜激情影院| 久久国产精品99久久人人澡| 一区二区三区在线不卡| 国产欧美中文在线| 日韩一级片在线观看| 在线精品视频小说1| 懂色一区二区三区免费观看| 日韩福利电影在线| 亚洲综合激情网| 国产精品久久久久久久久久久免费看 | 久久99精品国产麻豆婷婷| 亚洲精品菠萝久久久久久久| 国产三区在线成人av| 日韩一区和二区| 欧美色综合影院| 色偷偷成人一区二区三区91| 国产·精品毛片| 国产一区二区电影| 久久精品国产久精国产爱| 亚洲va国产天堂va久久en| 亚洲四区在线观看| 国产精品网站在线| 久久久久久久久久电影| 日韩精品中午字幕| 欧美一区二区三区日韩视频| 欧洲精品在线观看| 91视频一区二区三区| 99久久精品国产毛片| 成人免费的视频| 成人一级黄色片| 国产很黄免费观看久久| 国产一区二区在线观看视频| 麻豆久久久久久久| 美女精品自拍一二三四| 欧美a级一区二区| 日韩av一区二区在线影视| 五月天欧美精品| 日韩精品每日更新| 免费高清成人在线| 日本伊人精品一区二区三区观看方式 |