原文:
matlab隨筆之指派問題的整數規劃
注:除了指派問題外,一般的整數規劃問題無法直接利用matlab函式,必須matlab程式設計實現分支定界法和割平面解法。
常用lingo等專用軟體求解整數規劃問題。
%指派矩陣為
% 3, 8, 2,10, 3
% 8, 7, 2, 9, 7
% 6, 4, 2, 7, 5
% 8, 4, 2, 3, 5
% 9,10, 6, 9,10
% %解題過程
c=[3 8 2 10 3;
8 7 2 9 7;
6 4 2 7 5;
8 4 2 3 5;
9 10 6 9 10];%指派矩陣
c=c(:);%將矩陣c按列拉直,然後賦給c,
%例如矩陣c=[1 ,2,3;4,5,6],操作完後就是列向量1,4,2,5,3,6
a=zeros(10,25);
for i=1:5
a(i,(i-1)*5 + 1:5*i)=1;
a(5+i,i:5:25)=1;
end
b=ones(10,1);
[x,y]=bintprog(c,,,a,b);%解決二進位制整數規劃問題的函式
x=reshape(x,[5,5])%reshape函式重新調整矩陣的行數、列數、維數
y
執行結果
x =
0 0 0 0 1
0 0 1 0 0
0 1 0 0 0
0 0 0 1 0
1 0 0 0 0
y = 21
Matlab隨筆之指派問題的整數規劃
注 除了指派問題外,一般的整數規劃問題無法直接利用matlab函式,必須matlab程式設計實現分支定界法和割平面解法。常用lingo等專用軟體求解整數規劃問題。指派矩陣為 3,8,2,10,3 8,7,2,9,7 6,4,2,7,5 8,4,2,3,5 9,10,6,9,10 解題過程 c 3 8...
指派問題 MATLAB實現
適用於任意n階係數矩陣 clear all c 2 1513 4 10414 15 9 1416 13 7811 9 效率矩陣c n size c,1 計算c的行列數n c c 計算目標函式係數,將矩陣c按列排成乙個列向量即可。a b 沒有不等式約束 ae zeros 2 n,n 2 計算等約束的係...
Matlab 列舉法求解指派問題
例 有乙份中文說明書,需譯成英 日 德 俄四種文字,分別記作e,j,g,r,現有甲 乙 丙 丁四人,他們將中文說明書翻譯成不同語種的說明書所需時間如下表所示。問應指派何人去完成何工作,使所需時間最少?人員任 務ej gr甲2 15134乙 1041415丙9 141613丁 78119 指派問題是0...