2024年4月20日发(作者:)
MATLAB试验
MATLAB中用于解线性规划问题的函数—lp()
格式:
x=lp(c,A,b)
x=lp(c,A,b,vlb)
x=lp(c,A,b,vlb,vub)
x=lp(c,A,b,vlb,vub,x0)
x=lp(c,A,b,vlb,vub,x0,neqcstr,display)
x=lp(c,A,b,vlb,vub,x0,neqcstr,display)
说明:
lp函数用于求解如下线性规划问题:
目标函数
cx
min
约束条件
Axb
其中A为矩阵,c为行向量,b为列向量。即
minfc
1
x
1
cx
2
2
c
n
x
n
a
11
a
21
a
m1
a
12
a
22
a
m2
a
1n
x
1
b
1
x
b
a
2n
2
2
a
mn
x
n
b
m
功能:
x=lp(c,A,b)求解上述线性规划问题,返回线性规划的解向量x。
x=lp(c,A,b,vlb)设置解向量的下界,即解向量必须满足vlb<=x。
x=lp(c,A,b,vlb,vub)设置解向量的上下界,即解向量必须满足vlb<=x<=vub。
x=lp(c,A,b,vlb,vub,x0)设置初始解向量为x0。
x=lp(c,A,b,vlb,vub,x0,neqcstr)设置在约束条件中等式约束的个数,等式约束必须
位于约束方程的前面几个。
x=lp(c,A,b,vlb,vub,x0,neqcstr,display)设置警告信息的显示。
辅助函数:
y=zeros(m,n)
其功能是使y成为m行n列的零矩阵。
实习题目:
1. 解线性规划问题
mins
5x
1
4x
2
6x
3
x
1
x
2
x
3
20
3x
2x
4x
42
123
3x
1
2x
2
30
x
1
0,x
2
0,x
3
0
2. 丽莎为了健康,打算每天从柳丁、木瓜、香蕉、胡萝卜4种水果中获取
维生素A、B、C、D。假设柳丁每个20元,木瓜每个30元,香蕉每根15元,胡
萝卜每根25元。每天她最少必需摄取500单位维生素A, 250单位维生素B, 600
单位维生素C, 以及300单位维生素D,各水果所含维生素及价格如表1。
表1. 水果价格及含维生素含量
水果
柳丁(
x
1
) 木瓜(
x
2
) 香蕉(
x
3
) 胡萝卜(
x
4
) 最少需求
维生素
A 5 50 10 80 500
B 15 30 40 20 250
C 90 20 30 30 600
D 10 15 10 50 300
价 格 20 30 15 25
试求花费最少,又能满足各种维生素摄取量的最佳解。
3. 某工厂生产
A
1
,
A
2
两种产品。已知生产
A
1
一万瓶要用原料5公斤
B
1
,
300公斤
B
2
,12公斤
B
3
,可获利润8000元;生产
A
2
一万瓶要用原料3公斤
B
1
,
80公斤
B
2
,4公斤
B
3
,可获利润3000元。该厂现有原料500公斤
B
1
,20000公
斤
B
2
,900公斤
B
3
。问生产
A
1
,
A
2
各多少,才能获得最大利润?
4. 某厂用
A
1
,
A
2
两台机床,加工
B
1
,
B
2
,
B
3
三种不同零件。已知在一个
生产周期内
A
1
只能工作80机时,
A
2
只能工作100机时。一个生产周期计划加工
70个零件
B
1
,50个
B
2
,20个
B
3
。两台机床加工每个零件的时间和每个零件的
成本,分别如表2和表3,问如何安排加工任务,才能使加工成本最低?
表2. 加工每个零件所需时间表 (单位:机时∕个)
零件
B
3
B
2
B
1
机床
A
1
1 1 1
A
2
1 2 3
表3. 加工每个零件成本表 (单位:元∕个)
零件
B
3
B
2
B
1
机床
A
1
2 3 5
A
2
3 4 6


发布评论