当前位置:   article > 正文

MATLAB初始化智能算法编码-产生随机不重复整数序列矩阵_matlab矩阵不重复随机生成

matlab矩阵不重复随机生成

产生随机不重复整数序列矩阵是智能算法最常用的操作之一,以下给出具体方法:

clc;close all;clear all;warning off;%清除变量
rand('seed', 100);
randn('seed', 100);
format long g;


N=10; % 设定优化问题维数
lb=0*ones(1,N);% 自变量上限
ub=1*ones(1,N);% 自变量下限

popsize=10;% 种群数
Chrom=mygenfun(popsize,N,lb,ub)
 

function Chrom=mygenfun(popsize,N,lb,ub)
% 建立随机种群
Chrom=zeros(popsize,N);% 初始化编码矩阵
for i=1:popsize% 循环
    x=zeros(1,N);% 初始化变量
    for j=1:N
       x(1,j)=lb(j)+(ub(j)-lb(j))*rand(1,1);% 随机赋值
    end
    [v1,S]=sort(x);% 排序
     Chrom(i,:)=S;% 排序赋值
end
 

程序运行结果如下:


Chrom =

     3     2     1    10     5     4     7     8     6     9
     2     5     6     1    10     3     7     4     9     8
     1     7     8     3     5     9     6     4     2    10
     2     7     5     4    10     1     9     8     6     3
     9     1     5     6     3     7     2     8    10     4
     1     9     8     7    10     4     3     6     2     5
     3     8     2     4     1     6     7     5     9    10
     1     6     7     3     8    10     5     9     2     4
     8     9     5     1     2     3     4     6    10     7
     8    10     3     4     7     9     2     6     1     5

>> 

熟练掌握此方法可以广泛用于各类排序编码的智能算法,避让遗传算法,蚁群算法等,用于解决很多排序问题.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/1011892
推荐阅读
相关标签
  

闽ICP备14008679号