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

相关推荐
itzixiao18 小时前
L1-049 天梯赛座位分配(20 分)[java][python][c]
java·开发语言·python
子非鱼@Itfuture18 小时前
ThreadLocal 是什么?如何用?以及最佳使用场景
java·开发语言·spring
杨凯凡18 小时前
【024】JVM 参数入门:堆、栈、元空间与典型模板
java·开发语言·jvm
不懒不懒18 小时前
【PaddleOCR实战指南:图像文字识别、实时摄像头与PyQt5 GUI开发】
开发语言·python
han_hanker18 小时前
下拉模糊搜索多选, 编辑,详情问题
开发语言·javascript·ecmascript
invicinble18 小时前
java集合的设计思路
java·开发语言·python
jiayong2318 小时前
第 33 课:任务看板视图(按状态分列)与本地持久化
开发语言·前端·javascript·学习
A_aspectJ18 小时前
【Java基础开发】 基于Swing GUI 组件实现图书管理系统
java·开发语言
xyq202419 小时前
Font Awesome 加载中图标
开发语言
南宫萧幕19 小时前
车辆控制基础:从 EKF 状态估计到非线性 MPC 轨迹跟踪的闭环实现
算法·matlab·汽车·控制·pid