当前位置:
文档之家› 数学模型与数学实验1第一章 线性规划
数学模型与数学实验1第一章 线性规划
Aeq=[1,1,1]; beq=7; lb=zeros(3,1);
x=linprog(-f,A,b,Aeq,beq,lb);z=f’*x;
2)执行ex1_2.m
注意不同情形下的命令格式 [x,z]=linprog(f,A,b,[],[],lb,ub,x0) [x,z]=linprog(f,[],[],Aeq,beq,lb,ub,x0) [x,z]=linprog(f,A,b,Aeq,beq,[],ub) …
1 1 2 3
n
min z ci ui vi i 1
s.t.
Au v b,
u,v
0.
c
T
u
min
z c
v
s.t.
A,
A
u
v
b,
u,v 0.
2)编写m文件ex1_5.m
A=[1,-1,-1,1;1,-1,1,-3;1,-1,-2,3]; b=[-2;-1;-0.5];c=[1,2,3,4]’; f=[c;c]; Amat=[A,-A]; lb=zeros(8,1); y=linprog(f,Amat,b,[],[],lb);z=f’*y; x=y(1:4)-y(5:8);
(subject to) s.t.
2x1+x2≤10
(约束条件)
x1+x2 ≤8
x2 ≤7
x1,x2≥0
其中x1, x2称为决策变量。
定义(线性规划问题):在一组线性约 束条件下,求一线性目标函数的最大 (或最小)。
单纯形法基本思想:线性规划问题的可 行域是n维向量空间Rn中的多面凸集, 其最优值如果存在必在该凸集的某顶点 处达到。据此可以完成计算求解。
第1章 线性规划
1.1线性规划问题
当今社会现状:经济快速发展,资源急 剧消耗,地球环境不堪重负…
解决关键:如何利用现有资源安排生产, 以取得最大经济效益----数学规划。线 性规划(Linear Programming, LP)是其 中的重要分支。
1947,G.B.Dantzig,单纯形法(Simplex Method)
tmat=zeros(n);tmat(i,:)=1;Aeq2=[Aeq2,tmat]; end Aeq=[Aeq1;Aeq2]; beq1=a;beq2=b’;beq=[beq1;beq2]; [x,z]=linprog(c(:),[],[],Aeq,beq,zeros(m*n,1));
ex1_6.m
p=[0,1,2,4.5,6.5]’*1e-2;u=[0,103,198,52,40]’*1e-2;
clear;clc; m=4;n=5; a=rand(m,1);b=rand(1,n);c=rand(m,n); [x,z]=transport(a,b,c);
例1.m7in xi
max yi
xi
yi
v max yi
xi yi
gap ?
min v
s.t.vxi0y.i v, yi xi v,i 1, 2,L , n,
<1>约束风险,优化收益(模型ex1_8a); 若投资者所能承受最高风险度为a,则
n
max qi pi xi i0
ri xi Ma,i 0,1,L , n,
s.t.
n
1 pi xi
M,
i0
xi 0,i 0,1,L , n.
<2>约束收益,优化风险(模型ex1_8b); 若投资者要求的最低综合收益率为k,则
资si时,收益率qi,风险损失率ri,交易 费率为pi(购买额不超ui时按ui计算); 总体风险可用投资资产中最大的一个风 险来度量; 同期银行存款利率为q0(=5%),无交易 费无风险; 给定n=4时数据,试设计投资方案使静 收益尽可能大,总体风险尽可能小。
n=4时数据
si
qi(%) ri(%) pi(%)
3)执行ex1_5.m
例1.6 某商品有m个产地、n个销地,各 产地的产量分别为a1,a2,…,am,各销地 的需求量分别为b1,b2,…,bn。若该商品由 i产地运到j销地的单位运价为cij,问应 该如何调运才能使总运费最省?
n
xij ai , i 1, 2,L
, m,
j1
mn
m
min z
解:1)转化为Matlab标准形式
由
ui
xi xi 2
, vi
xi 2
xi
, xi
ui vi ,
xi
ui vi
u u1, u2 , u3, u4 T , v v1, v2 , v3, v4 T
且 1 1 1 1 A 1 1 1 3 , c 1, 2,3, 4T , b 2, 1, 0.5T
min
max
ri xi
n i0
n
qi
pi xi
Mk,
i0
s.t. n 1 pi xi M ,
i0
xi
0,i 0,1,L
, n.
<3>风险-收益平衡优化(模型ex1_8c),即 对风险和收益分别赋以权重s和1-s;
n
min
s
max
ri
xi
n i0
1
s
qi pi xi
i0
s.t.
n
i0
1
pi
xi
M,
xi 0,i 0,1,L , n.
(4)模型求解
a)模型<1>可改写为Matlab形式
diag r x Ma
min p qT x
s.t.1 pT x M ,
x
0.
<1>编写m文件ex1_8a.m
clear;clc;
M=1e5;
r=[0,2.5,1.5,5.5,2.6]’*1e-2;q=[5,28,21,23,25]’*1e-2;
b)投资si的交易费为 pimax{xi,ui},i=0,1,2,…,n
故投资si的净收益为Qi=qixi-pimax{xi,ui} c)要使净收益尽可能大,总体风险尽可
能小,即max ∑iQi和min R需要同时进行 ,此即多目标规划
适当条件(ui<<M)下可以考虑近似模型
max
n
qi xi pi maxxi ,ui ,
ui
s1
28
2.5
1
103
s2
21
1.5
2
198
s3
23
5.5 4.5
52
s4
25
2.6
6.5
40
(2)符号规定和基本假设
a)符号规定
<1>si表示第i种投资项目,i=0,1,…,n, s0表示存入 银行; <2>qi,pi,ri表示si的收益率,交易费率,风险损失率 ,p0=r0=0; <3>ui表示si的交易定额,u0=0; <4>xi表示投资项目si的资金; <5>R表示总体风险; <6>Q表示总体收益.
A1 A2
z
b1 b2
,
z lb.
1.2 投资的收益与风险
社会经济快速发展,各种理财产品层出 不穷,投资行为变得越来越普及(财团 、公司、boss、大妈?)。如何在当前 复杂环境下对有限资本进行合理投资?
(1)问题提出
可用投资总额为M; 市场上有n种资产si (i=1,2,…,n)可选,投
概括:在如下资源条件下,应生产甲、 乙机床各几台,才能使总利润最大?
产品甲
机器A
2
机器B
1
机器C
0
利润(元/件) 4000
产品乙 机器资源(小时)
1
10
1
8
1
7
3000
数学模型:设该厂生产x1台甲机床和x2 乙机床时总利润最大,则x1, x2应满足
(目标函数) max z = 4000x1 + 3000x2
min v
s.t.vxi0y.i v 0, yi xi v 0,i 1, 2,L , n,
改写为Matlab形式,由
x [x1, x2 ,L , xn ]T , y [ y1, y2 ,L , yn ]T ,
f = [01n , 01n ,1]T , z = [ xT , yT , v]T , lb inf, inf,L , 0T ,
b)基本假设
<1>投资数额M相当大; <2>总体风险R用所投资项目si中的最大风险度 量; <3>si之间相互独立; <4>在投资时期内,ri,pi,qi为定值,不受意外因素 影响; <5>收益Q和风险R不受其它因素干扰.
(3)模型分析与建立
a)总体风险R用所投资项目si中的最大风 险度量,即 R=max {rixi, i=0,1,…,n}
1 0 L
A 0 0 1 L
L 1 0 0L
0 1
0
0 1 L
,
b1
0
,
L
1 1n2n1
0
1 0 L
A2
0
1 L
L
0
0L
0 1 0L 0 01L
L 1 0 0 L
0 1
0
0 1 L
,
b2
0
,
L
1 1n2n1
0
得
min f T z
s.t.
(2)解的概念
LP问题标准形式
n
max z c j x j , j 1
s.t.
n j 1
ai
j
x
j
bi ,i
1, 2,L
, m,
x
j