Page 304 - 数学建模算法与应用
P. 304
Mathematical Modeling Algorithms and Applications
数学建模算法与应用
束以确保模型更加复杂 % 工厂容量必须大于等于需求总量
@for(plant(i): capacity(i) >= @sum(customer(j): b(j)));
capacity = a;% 设置工厂的容量等于它的产能 % 需求总量不超过所有工厂
的总产能
demand_total = @sum(customer(j): b(j));
capacity_total = @sum(plant(i): a(i));
demand_total <= capacity_total;% 需求必须至少被满足 80%
@for(customer(j): demand(j) >= 0.8 * b(j));% 确保每个工厂的出货量不
超过其容量
@for(plant(i): @sum(routes(i, j): x(i, j)) <= capacity(i));% 确保每个客
户的需求得到充分满足
@for(customer(j): @sum(routes(i, j): x(i, j)) >= b(j));% 限制特定路径
上的流量
x(1, 2) <= 150;
x(2, 3) <= 200;% 确保特定客户的需求被满足
@for(customer(j) | j #eq# 3: @sum(plant(i): x(i, j)) = b(j));% 确保特定工
厂的总出货量不超过其容量
@for(plant(i) | i #eq# 2: @sum(customer(j): x(i, j)) <= 0.9 * a(i));
end
经 8 次运算,得到最终的计算结果,见表 10-5。总运费为 3360 元,高于原
运费 410 元,超过原方案 10%的上限 115 元。
下面我们给出目标规划的另外一种解法,把所有的目标偏差加权求和。
例 8 某公司从三个仓库向四个用户提供某种产品。仓库与用户所在地的供需
量及单位运价见表 10-6。
294

