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 \>\> ![](https://file.jishuzhan.net/article/1751189615294812161/d5d6528290a3fe9ff1ff27ab8649006d.webp) 熟练掌握此方法可以广泛用于各类排序编码的智能算法,避让遗传算法,蚁群算法等,用于解决很多排序问题.

相关推荐
biter down3 小时前
14:pytest-order 插件 顺序控制案例
开发语言·python·pytest
郝学胜-神的一滴3 小时前
Qt 高级开发 009: C++ Lambda 表达式
开发语言·c++·qt·软件构建
星栈独行3 小时前
我在 Rust 全栈项目里用 JWT 做无状态认证
开发语言·后端·rust·前端框架·开源·github·web
石山代码4 小时前
C++ 轻量级日志系统
开发语言·c++
小技与小术4 小时前
玩转Flask
开发语言·python·flask
SilentSamsara4 小时前
Python 性能优化:tracemalloc、profiling 与 C 扩展加速
开发语言·python·青少年编程·性能优化
冰小忆4 小时前
大驼峰命名规范和小驼峰命名规范的区别是什么?
开发语言·python
cd_949217215 小时前
2026年扫描电子显微镜选型指南:易姆科特的核心优势与产品矩阵解析
人工智能·线性代数·矩阵
এ慕ོ冬℘゜6 小时前
JS 前端基础面试题
开发语言·前端·javascript
浩少7026 小时前
【无标题】
java·开发语言