菜篮子工程作为利民惠民的重要措施之一,受到了广大市民的欢
迎,也给人民的生产生活带来了极大的便利。为了使菜篮子工程顺利实施,首先要保证资源的合理调配。本文基于图论及算法建立最短路径模型,通过改变目标函数和约束条件建立不同的线性规划模型,实现对定点供应方案的设计以及对最低损失金额的求解。
针对问题1,为了使蔬菜调用费用最小,根据图2所示蔬菜运输路径图确定权值矩阵,使用算法得到各收购点至各菜市场的最短距离。在此基础之上,将各个收购点的收购量和菜市场的需求量作为约束条件,以蔬菜调运费用及预期短缺损失之和最小为目标函数建立线性规划模型,并进行求解。得到最低损失金额为6670元,定点供应方案见表3。
针对问题2,在问题1的基础上,增加了对各个菜市场短缺量的限制。依然以蔬菜调运费用及预期短缺损失之和最小为目标函数,并增加对各菜市场短缺量的约束,以此建立新的线性规划模型,并进行求解。得到最低损失金额为7625元,定点供应方案见表4。
针对问题3,在问题1,2的基础上,增加蔬菜种植面积,使得各个菜市场的需求均得到满足。选择以总运输费用为目标函数,同时使各个市场供需量相同,并对各个收购点进行增产蔬菜供应,以此作为约束条件,建立线性规划模型,并进行求解,得到增产蔬菜应仅向C收购点供应22000kg蔬菜 。
% Floyd算法求最短路径
function [d,r]=Floyd(w)
clc
clear
w=xlsread('权关联矩阵.xlsx'); %读入数据
n=length(w);
%设置距离矩阵初值
for i=1:n
for j=1:n
d(i,j)=w(i,j);
r(i,j)=j;
end
end
%递推产生距离矩阵序列
for k=1:n
for i=1:n
for j=1:n
if d(i,k)+d(k,j)<d(i,j)
d(i,j)=d(i,k)+d(k,j);
r(i,j)=k;
end
end
end
end