首页 > 分享 > LINGO:典型应用1(下料问题,配料问题,选址问题)

LINGO:典型应用1(下料问题,配料问题,选址问题)

1、下料问题
例:原材料根长5.5ABC种材料,分别为3.1m,2.1m,1.2m,数量分别为 100,200,400 根,试安排下料方式,使所需圆钢原材料的总数最少。
(1)

一根长5.5m的圆钢截出A,B,C三种材料的切解假设切割时没有损耗割方式有那些?

例如先截出 1A,余2.4m,可用作2C,则余0;若2.4m截出1B则余 0.3m;5.5m 截出4C,则余 0.7m;5.5m 截出2B+C,则余0.1m。所有可能的下料方式见下:

(2)LINGO

MIN=x1+x2+x3+x4+x5;

x1+x2>=100;

x1+2*x3+x4>=200;

2、配料问题

例:某营养师要为某个病人拟订本周蔬菜类菜单,当前可供选择的蔬菜品种、价格和营养成分含量,以及病人所需养分的最低数量见下表所示。病人每周需14份蔬菜,为了口味的原因,规定一周内的卷心菜不多于2份,胡萝卜不多于3份,其他蔬菜不多于4份且至少一份.。在满足要求的前提下,制订费用最少的一周菜单方案。

每份蔬菜所含养分数量蔬菜养分铁磷维生素A维生素C烟酸每份价格
(元)

A1

青豆

0.4520415220.32.1

A2

胡萝卜

0.4528406550.351.0

A3

花菜

0.6540850430.61.8

A4

卷心菜

0.42575270.21.2

A5

芹菜0.52676480.42.0A6土豆0.57523580.61.2每周最低需求612512 5003455

MODEL:

SETS:

SHC/A1..A6/:AI,X;

YF/B1..B5/:BJ;

JIAGE(SHC,YF):C;

ENDSETS

DATA:

AI=2,1,1.8,1.2,2.0,1.2;

BJ=6,125,12500,345,5;

C=0.45,20,415,22,0.3,

0.45,28,4065,5,0.35,

0.65,40,850,43,0.6,

0.4,25,75,27,0.2,

0.5,26,76,48,0.4,

0.5,75,235,8,0.6;

ENDDATA

MIN=@SUM (SHC:AI*X);

@FOR(SHC(I): @GIN (X(I)) ) ;

@FOR(SHC(I): X(I)>=1);

@SUM(SHC(I): X(I))=14;

X(2)<=3;

X(4)<=2;

@FOR(SHC(I)|I #NE# 2 #AND# I #NE# 4: X(I)<= 4);

@FOR(YF(J): @SUM(SHC(I): X(I)*C(I, J))>=BJ(J));

END

3、选址问题

例:某公司有6个建筑工地要开工,工地的位置(xi,yi)(单位:km)和水泥日用量di(单位:t)由下表给出,公司目前有两个临时存放水泥的场地(简称料场),分别位于A(5,1)和B(2,7),日存储量各20t,请解决以下两个问题:
(1)假设从料场到工地之间均有直线道路相连,试制定日运输计划,即从A,B两个料场分别向各工地送多少水泥,使总的吨·千米数最小;
(2)为了进一步减少吨·千米数,打算舍弃目前的两个临时料场,改建两个新料场,日存储量仍然各为20t,则建在何处为优?

工地123456位置xi1.258.750.55.7537.25yi1.250.754.7556.57.75日用量di3547611

(1)

第一步:先画出6个工地和2个临时料场的示意图

Matlab:

x=[1.25,0.5,3,1.25,4.75,6.5,5,2];

y=[8.75,5.75,7.25,0.75,5,7.75,1,7];

plot(x, y, 'o');

% 添加标签

labels = {'1', '2', '3', '4', '5','6','A','B'};

for i = 1:length(x)

text(x(i), y(i), labels{i}, 'HorizontalAlignment', 'left', 'VerticalAlignment', 'bottom');

end

xlabel('X轴'); % 设置坐标轴标签和标题

ylabel('Y轴');

grid on; % 显示网格

示意图:

第二步:LINGO程序(线性规划模型,约束,最优解)

MODEL:

SETS:

gd/1..6/:x,y,d; !定义6个工地;

lch/A,B/:px,py,e;!定义2个料场;

links(gd,lch):C;!C为运量;

ENDSETS

DATA:

x=1.25 8.75 0.5 5.75 3 7.25;

y=1.25 0.75 4.75 5 6.5 7.75;!工地的位置;

d=3,5,4,7,6,11;!工地水泥需求量;

px=5,2;py=1,7; !料场位置;

e=20,20;!料场的日存储量;

ENDDATA

MIN=@SUM(links(i,j):C(i,j)*((px(j)-x(i))^2+(py(j)-y(i))^2)^(1/2));!目标函数是使总的吨·千米数最小;

@FOR(gd(i):@SUM(lch(j):C(i,j))=d(i));!满足各工地的日需求量;

@FOR(1ch(j):@sum(gd(i):c(i,j))<=e(j)); !料场每天总运出量不超过存储量;

END

第三步:得最优方案如下:

工地123456合计运量A35070016B004061120合计 354761136

(2)修改LINGO程序

MODEL:

SETS:

gd/1..6/:x,y,d; !定义6个工地;

lch/A,B/:px,py,e;!定义2个料场;

links(gd,lch):C;!C为运量;

ENDSETS

DATA:

x=1.25 8.75 0.5 5.75 3 7.25;

y=1.25 0.75 4.75 5 6.5 7.75;!工地的位置;

d=3,5,4,7,6,11;!工地水泥需求量;

e=20,20;!料场的日存储量;

ENDDATA

MIN=@SUM(links(i,j):C(i,j)*((px(j)-x(i))^2+(py(j)-y(i))^2)^(1/2));!目标函数是使总的吨·千米数最小;

@FOR(gd(i):@SUM(lch(j):C(i,j))=d(i));!满足各工地的日需求量;

@FOR(lch(j):@sum(gd(i):c(i,j))<=e(j));

END

相关知识

LINGO:典型应用1(下料问题,配料问题,选址问题)
通报一批典型生态环境问题
lingo子模型——数学模型4.7 例1 广告投入
考虑客户满意和环境的企业物流配送中心选址研究
高企申报九大典型问题答疑解惑!
企业应用开发面临的问题以及思考
递归问题题目
The Design of the Optimal Cutting Scheme of Wooden Board Based on Linear Programming
移动应用开发常见的问题
苏教版高中生物必修1第一章人类面临的问题之一:健康问题

网址: LINGO:典型应用1(下料问题,配料问题,选址问题) https://m.huajiangbk.com/newsview2306380.html

所属分类:花卉
上一篇: 【花菜寒性还是温性】
下一篇: 花菜的正确的清洗方法:掰开枝桠用