指派問題 MATLAB實現

2021-07-22 08:09:37 字數 700 閱讀 2534

%適用於任意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);%計算等約束的係數矩陣a

fori=1:n

forj=(i-1)*n+1:n*i

ae(i,j)=1;

endfor k=i:n:n^2

ae(n+i,k)=1;

endend be=ones(2*n,1);%等式約束右端項b

xm=zeros(n^2,1);%決策變數下界xm

xm=ones(n^2,1);%決策變數上界xm

[x,z]=linprog(c,a,b,ae,be,xm,xm);%使用linprog求解

x=reshape(x,n,n);%將列向量x按列排成乙個n階方陣

disp('最優解矩陣為:');%輸出指派方案和最優值

assignment=round(x)%使用round進行四捨五入取整

disp('最優解為:');

z

Matlab 列舉法求解指派問題

例 有乙份中文說明書,需譯成英 日 德 俄四種文字,分別記作e,j,g,r,現有甲 乙 丙 丁四人,他們將中文說明書翻譯成不同語種的說明書所需時間如下表所示。問應指派何人去完成何工作,使所需時間最少?人員任 務ej gr甲2 15134乙 1041415丙9 141613丁 78119 指派問題是0...

Matlab隨筆之指派問題的整數規劃

原文 matlab隨筆之指派問題的整數規劃 注 除了指派問題外,一般的整數規劃問題無法直接利用matlab函式,必須matlab程式設計實現分支定界法和割平面解法。常用lingo等專用軟體求解整數規劃問題。指派矩陣為 3,8,2,10,3 8,7,2,9,7 6,4,2,7,5 8,4,2,3,5 ...

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...