数学建模学习之简单设备分配问题

简单的设备分配问题

某公司新购置了某种设备 6台,欲分配给下属的4 个企业,已知各企业获得这种设备后年创利润如表 1.1 所示,单位为千万元。问应如何分配这些设备能使年创总利润最大,最大利润是多少?

        表1.1的数据为:

数学建模学习之简单设备分配问题_第1张图片

对问题进行一波分析,其实也不难找到突破点,就是一个简单的动态规划问题,对于动态规划问题我们可以用Lingo软件来进行解决。 

首先我们要找到变量,建立数学模型然后进行求解。

j =1,2,3,4 来表示甲,乙,丙,丁四个企业,C_{ij} 来表示第 i (i = 1,···,6)个设备分配给第 j 个企业的利润,这里我们引入0-1变量

x_{ij}=\left\{\begin{matrix} 0 & & \\ 1 & & \end{matrix}\right.

0 表示第 i 台设备不分配给第 j 个企业,1 表示第 i 台设备分配给第 j 个企业

数学模型为

Max\sum_{i=1}^{6}\sum_{j=1}^{4}C_{ij}x_{ij}

s.t.\begin{cases} \sum_{i=1}^{6}x_{ij}\geqslant 1 & \text{ } j=1,2,3,4 \\ \sum_{j=1}^{4}x_{ij}= 1 & \text{ } i=1,2,3,4,5,6 \\ x_{ij}=0||x_{ij}=1& \text{ } i=1,2,3,4,5,6 j=1,2,3,4 \end{cases} 

建立玩模型后对应的linggo代码为

model:
sets:
shebei/1..6/;
qiye/1..4/;
link(shebei,qiye):c,x;
endsets
data:
c = 4 2 3 4
6 4 5 5
7 6 7 6
7 8 8 6
7 9 8 6
7 10 8 6;
enddata
max=@sum(link:c*x);
@for(qiye(j):@sum(shebei(i):x(i,j))>1);
@for(shebei(i):@sum(qiye(j):x(i,j))=1);
@for(link:@bin(x));
end

 运行完成后我们可以得到结果

数学建模学习之简单设备分配问题_第2张图片

 最大利润为44

数学建模学习之简单设备分配问题_第3张图片

 

可以得出当 x_{14}=1,x_{21}=1,x_{31}=1,x_{43}=1,x_{52}=1,x_{62}=1的时候最大利润为44。

 

你可能感兴趣的:(数学建模,学习)