编程论坛
注册
登录
编程论坛
→
Matlab
求Xij中i,j约束条件下的程序
hjye_06
发布于 2010-04-24 10:09, 1506 次点击
对于Xij,i取1,2,3,4,5,6,7中的任意五个。当i等于一固定值时,j最多只能取1,2,3中的两个。求MATLAB程序编写
8 回复
#2
jmjy
2010-04-24 22:59
不怎么看的懂哈
#3
anbcjys
2010-04-25 07:36
i=[1 2 3 4 5 6 7]
j=[1 2;1 3;2 3]
是不是这个意思?
#4
hjye_06
2010-04-25 09:58
i要取1至7中任意5个,当i等于某一固定值(如2)时,j取1,2,3中任意两个,,
#5
mywaylgh
2010-04-26 09:50
v=nchoosek(1:7,5) %取1:7中的5个
for s= 1:size(v,1)
for r = 1:5
i = v(s,r);
j = nchoosek(1:3,2); %取1:3中的2个
end
end
#6
hjye_06
2010-04-26 17:38
谢谢
#7
hjye_06
2010-04-26 20:19
v=nchoosek(1:7,5)则输出v =
1 2 3 4 5
1 2 3 4 6
1 2 3 4 7
1 2 3 5 6
1 2 3 5 7
1 2 3 6 7
1 2 4 5 6
1 2 4 5 7
1 2 4 6 7
1 2 5 6 7
1 3 4 5 6
1 3 4 5 7
1 3 4 6 7
1 3 5 6 7
1 4 5 6 7
2 3 4 5 6
2 3 4 5 7
2 3 4 6 7
2 3 5 6 7
2 4 5 6 7
3 4 5 6 7
k=nchoosek(1:3,2)则输出k=
1 2
1 3
2 3
那怎么编程能使v,k合并成
1 2 3 4 5 1 2
1 2 3 4 5 1 3
1 2 3 4 5 2 3
1 2 3 4 6 1 2
1 2 3 4 6 1 3
1 2 3 4 6 2 3
1 2 3 4 7 1 2
1 2 3 4 7 1 3
1 2 3 4 7 2 3
1 2 3 5 6 1 2
1 2 3 5 6 1 3
1 2 3 5 6 2 3
1 2 3 5 7 1 2
1 2 3 5 7 1 3
1 2 3 5 7 2 3
1 2 3 6 7 1 2
1 2 3 6 7 1 3
1 2 3 6 7 2 3
1 2 4 5 6 1 2
1 2 4 5 6 1 3
1 2 4 5 6 2 3
1 2 4 5 7 1 2
1 2 4 5 7 1 3
1 2 4 5 7 2 3
1 2 4 6 7 1 2
1 2 4 6 7 1 3
1 2 4 6 7 2 3
1 2 5 6 7 1 2
1 2 5 6 7 1 3
1 2 5 6 7 2 3
1 3 4 5 6 1 2
1 3 4 5 6 1 3
1 3 4 5 6 2 3
1 3 4 5 7 1 2
1 3 4 5 7 1 3
1 3 4 5 7 2 3
1 3 4 6 7 1 2
1 3 4 6 7 1 3
1 3 4 6 7 2 3
1 3 5 6 7 1 2
1 3 5 6 7 1 3
1 3 5 6 7 2 3
1 4 5 6 7 1 2
1 4 5 6 7 1 3
1 4 5 6 7 2 3
2 3 4 5 6 1 2
2 3 4 5 6 1 3
2 3 4 5 6 2 3
2 3 4 5 7 1 2
2 3 4 5 7 1 3
2 3 4 5 7 2 3
2 3 4 6 7 1 2
2 3 4 6 7 1 3
2 3 4 6 7 2 3
2 3 5 6 7 1 2
2 3 5 6 7 1 3
2 3 5 6 7 2 3
2 4 5 6 7 1 2
2 4 5 6 7 1 3
2 4 5 6 7 2 3
3 4 5 6 7 1 2
3 4 5 6 7 1 3
3 4 5 6 7 2 3
呢?。。。。
#8
mywaylgh
2010-04-27 09:15
out =[];
v=nchoosek(1:7,5);
for s= 1:size(v,1)
k= nchoosek(1:3,2);
for r = 1:size(k,1)
out = [out;v(s,:),k(r,:)];
end
end
out
#9
hjye_06
2010-04-28 10:23
对于Xij(i,j是下标),满足i=1时,X12+X13>=b11,X12+X23>=b12,X13+X23>=b13,我利用yamlip工具箱能解出(X12、X13、X23)。i取1到7,j取1到3,那怎么利用i,j循环输出这个7行3列的解呢??急求。。。。
1