24小时热门版块排行榜    

查看: 2786  |  回复: 8
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

我是柱哥啊

金虫 (正式写手)

[求助] 如何按照矩阵的某一行进行随机排列 已有2人参与

1、给定矩阵,如何随机排列第一行,并且矩阵的每一列对应不变?换句话就是,对矩阵进行随机重排列序,
2、给定矩阵每一行的意义,例如:第一行是工件号,第二行是对应工件的加工时间,第三行是对应工件的尺寸。
针对第一行进行遗传算子的一系列操作,在这个过程中,需要用加工时间与尺寸进行计算。
如何抽出矩阵的第一行进行其他的操作?操作结果形成新的工件号排序,并且工件对应的属性不变。
回复此楼
JustDoIt!
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★
感谢参与,应助指数 +1
xzhdty: 金币+1, 谢谢参与 2014-04-27 08:19:48
你只需要将排序后的第一行作为列号指定即可
试试下面的代码,可能更好理解一些
CODE:
a = [rand(1,5);randi(10,1,5);randi(100,1,5)]
b = a(:,randperm(length(a(1,:)),length(a(1,:))))

1.随机排列第一行用randperm(n,n),其中n==第一行的长度,这样不管矩阵维数是多少,生成的结果都不会出问题

2.跟第一个问题一样,第一行是a(1,,操作完后将这个作为列号指定抽取组成新矩阵就行.
例如下面的代码,a = [1,2,3;4,5,6]; b是a的第一行重新排[3,1,2],c是重排后对应的新矩阵
CODE:
>> a = [1:3;4:6]

a =

     1     2     3
     4     5     6

>> b = [3,1,2]

b =

     3     1     2

>> c = a(:,b)

c =

     3     1     2
     6     4     5

» 本帖已获得的红花(最新10朵)

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2014-04-24 23:23:35
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 9 个回答

asmeng

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
我是柱哥啊: 金币+20, ★★★很有帮助 2014-04-25 11:44:02
1. 第一个问题是不是对矩阵根据第一行进行随机排列?
实际上是各列进行洗牌。用Matlab来做的话,可以用randperm函数。比如,x是三行4列的矩阵,然后按列洗牌:
x=[1,2,3,4;1,2,3,4;1,2,3,4]
ind = randperm(4) %随机排列1到4
y=x(:,ind)%按照ind排列矩阵的各列

2. 第二个问题是不是先取出第一行进行操作,取出矩阵第一行的命令是:x1=x(1,,然后对x1进行运算,生成一个新的序号?(类似于1问中有一个新的ind),然后排列矩阵x吗?

» 本帖已获得的红花(最新10朵)

2楼2014-04-24 22:21:50
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

我是柱哥啊

金虫 (正式写手)

送红花一朵
引用回帖:
2楼: Originally posted by asmeng at 2014-04-24 22:21:50
1. 第一个问题是不是对矩阵根据第一行进行随机排列?
实际上是各列进行洗牌。用Matlab来做的话,可以用randperm函数。比如,x是三行4列的矩阵,然后按列洗牌:
x=
ind = randperm(4) %随机排列1到4
y=x(:,ind)% ...

第二个问题就是你说的这样子,跟第一个类似,这是在编码中遇到的坎,其实我想再仔细描述下,但是那就又牵扯到遗传算法了,只好这样子
JustDoIt!
4楼2014-04-25 11:05:41
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

我是柱哥啊

金虫 (正式写手)

引用回帖:
2楼: Originally posted by asmeng at 2014-04-24 22:21:50
1. 第一个问题是不是对矩阵根据第一行进行随机排列?
实际上是各列进行洗牌。用Matlab来做的话,可以用randperm函数。比如,x是三行4列的矩阵,然后按列洗牌:
x=
ind = randperm(4) %随机排列1到4
y=x(:,ind)% ...

抽出第一行,是作为序列号来用的,因为最终是根据第二行第三行的值来计算目标,最终根据目标来重新排列序列号。
遗传算法过程,我的是对序列号进行重组交叉等一些列操作,也就是说操作对象是序列号,但是计算目标的时候是根据序列号对应的第二行第三行来得,所以怎么才能保证每个号码对应的二三行值不会混乱?
JustDoIt!
5楼2014-04-25 11:14:15
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[文学芳草园] 厉娜 +3 张丹枫1991 2026-11-09 5/250 2026-11-09 16:53 by 张丹枫1991
[考博] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 kvewwGtKktqB 2026-11-04 12/600 2026-11-09 13:26 by Equinoxhua
[考研] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 ttH3f1oA6ace 2026-11-04 15/750 2026-11-09 13:19 by Equinoxhua
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +6 5sJFDKp2kwuI 2026-11-06 14/700 2026-11-09 11:52 by GwrQVVR6Oenx
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +5 5sJFDKp2kwuI 2026-11-06 16/800 2026-11-09 11:47 by GwrQVVR6Oenx
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 5sJFDKp2kwuI 2026-11-06 15/750 2026-11-09 11:41 by GwrQVVR6Oenx
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 5sJFDKp2kwuI 2026-11-06 10/500 2026-11-09 08:00 by IhnEQauGmT3K
[考研] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 5sJFDKp2kwuI 2026-11-06 12/600 2026-11-09 06:32 by l48hFd8Nwae2
[公派出国] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 5sJFDKp2kwuI 2026-11-06 8/400 2026-11-09 00:14 by l48hFd8Nwae2
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 5sJFDKp2kwuI 2026-11-06 8/400 2026-11-08 23:01 by l48hFd8Nwae2
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 5sJFDKp2kwuI 2026-11-06 9/450 2026-11-08 22:46 by l48hFd8Nwae2
[教师之家] 延安大学回应“副教授留绝笔信”:确已离世,正核实举报内容 +3 yexuqing 2026-11-04 5/250 2026-11-07 13:22 by 苏东坡二世
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +5 ttH3f1oA6ace 2026-11-04 10/500 2026-11-06 16:12 by 5sJFDKp2kwuI
[公派出国] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +6 ttH3f1oA6ace 2026-11-04 12/600 2026-11-06 16:10 by 5sJFDKp2kwuI
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 ttH3f1oA6ace 2026-11-04 11/550 2026-11-06 16:10 by 5sJFDKp2kwuI
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 kvewwGtKktqB 2026-11-04 14/700 2026-11-06 05:10 by qL1cU46YIdK0
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +6 kvewwGtKktqB 2026-11-04 16/800 2026-11-06 05:00 by qL1cU46YIdK0
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 ttH3f1oA6ace 2026-11-04 7/350 2026-11-06 02:13 by qL1cU46YIdK0
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 ttH3f1oA6ace 2026-11-04 9/450 2026-11-06 02:02 by qL1cU46YIdK0
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 hNpp4Y2CGvSC 2026-11-04 12/600 2026-11-06 01:53 by qL1cU46YIdK0
信息提示
请填处理意见