1樓:迂堂派
lingo 只 找到了一種,所有情況對應的 x 可以做出來???
就下面的**:
sets:x/1..10/: vx;
y/1..21/: vy, l, h;
xy(x, y): vxy;
endsets
for(xy(i,j): bin(vxy(i,j)))
for(x(i): sum(y(j): vxy(i, j)) 5);
for(y(j): sum(x(i): vxy(i, j)) h(j));
for(y(j): sum(x(i): vxy(i, j)) l(j));
for(x(i):
for(y(j) |j #le#
vxy(i, j) +vxy(i, j+1) +vxy(i, j+2) <= 1));
sum(xy(i,j): vxy(i,j)) = 50;
data:l=3,2,1,3,3,1,4,2,1,4,2,1,3,2,1,1,1,1,1,1,1;
h=5,3,2,4,4,2,5,3,2,5,3,2,4,4,2,2,1,1,1,1,1;
text('') = @writefor(x(i): writefor(y(j): vxy(i, j)),newline(1));
enddata
matlab非線性整數規劃程式請教
2樓:66的琮委
這是 用蒙特卡洛法(隨機演算法 )去一次次實驗得到答案。
3樓:匿名使用者
第乙個mengte是定義目標函式的m函式;
第二個是呼叫上述mengte函式並計算最優化值,tic toc函式表示了計算時間。
matlab 解決01整數規劃?
4樓:網友
help bintprog,先輸這個,看看它的解釋。
這題可以看做:
min=c*x c是所有相關費用的列矩陣,x是要求的01變數(15行一列的矩陣)。
s,t, -x1-x2-x3-x4-x5<=-1
x6-x7-x8-x9-x10<=-1
x11-x12-x13-x14-x15<=-1
x1+x2+x3+x4+x5<=2
x6+x7+x8+x9+x10<=2
x11+x12+x13+x14+x15<=2
x1+x6+x11=1
x2+x7+x12=1
x3+x8+x13=1
x4+x9+x14=1
x5+x10+x15=1
xi=0或1;x=1...15
matlab求解關鍵是根據要用的函式建立對應的矩陣。下面是我的**:
c=[4 8 7 15 12 7 9 17 14 10 6 9 12 8 7]';m=n=
for i=0:2
m=[m;zeros(5*i,1)' ones(5,1)' zeros((2-i)*5,1)']
n=[n;zeros(5*i,1)' ones(5,1)' zeros((2-i)*5,1)']
enda=[m;n];
b=[-1 -1 -1 2 2 2]';
aeq=for i=0:4
aeq=[aeq;zeros(i,1)' 1 zeros(4,1)' 1 zeros(4,1)' 1 zeros(4-i,1)']
endbeq=[1 1 1 1 1]';
vlb=vub=
x,y]=bintprog(c,a,b,aeq,beq,vlb,vub);
x=reshape(x,[3,5]),y
matlab做規劃重點在根據條件構建矩陣,建議還是用lingo算簡單。
5樓:網友
matlab解0-1整數規劃好麻煩,用lingo吧,特色就是解決整數規劃的包。
vb 程式設計 設m和n是正整數,輸入m,求當2的n次方大於等於
private sub command1 click dim m as long,n as integerm val inputbox 請輸入抄一個數襲 for n 1 to m if 2 n m then msgbox m m vbcrlf 要使bai2的n次方大 於du等於m時zhi,n的最小值...
求問m的n次方的c語言程式,c語言計算m的n次方要求輸入mn輸出m的n次方
include include void main printf m的n次方為 容 d n s include void main printf m d m c語言 計算m的n次方 要求輸入m n 輸出m的n次方 include void main 已在vc檢測 include stdio.h ma...
用C語言編寫程式求整數的任意次方的最後三位數
include void main printf d的 zhi d次方的 dao最後三 內位數容 d n num,n,pn 編寫程式求一個整數的任意次方的最後三位數,即x y的最後3位數。越簡單越好 s x y a1 s 10 最後一位 s s a1 10 a2 s 10 倒數第二位 s s a2 ...