第九章在简约世界里使收益最大一-线性规划 §9—1华尔街公司的投资选择 组合投资问题:总金额1000万美圆的资金,用于 投资四种债券。已知 债券年收益率期望值%年收益率最低值%持续期/年 债券1 13 债券2 68 债券3 347 债券4 希望年收益率期望值达到最大,并且满足下列要求: 1)组合投资的年收益率最低值至少为8%; 2)组合投资的平均持续期至多为6年(各债券的 投资百分比乘持续期,之和); 3)任一债券的投资百分比至多为40% 怎样投资? §9—2组合投资模型 四种债券的投资金额是待定的决策变量,分别记 为x1,x2,x2,x4;目标是年收益率期望值最大;题中的 条要求是约束条件。得下面优化模型: max0.13x+0.08x2+0.12x3+0.14x4 +x,+x3+x4=1000, x4≤0 3x1-2x2+x3+3x4≤0, 0≤x1,x2,x3,x4≤400 在这个模型中,决策变量都是线性的,故称为线性规划 §9-3§94线性规划的求解 我们要用 Matlab求解线性规划,首先必须把线性 规划模型写成适用于 Matlab命令的标准形式: min C x Aeqx= beq, (其中,矩阵A,Aeq,向量cb,beq,xL,xU均为已知数据,x是 未知向量。) 如,§92中的模型,其适用于 Matlab的标准形 式为 mn(-0.13-008-0.2,-0.14)·(x,x2,x2,x) 3-2 4) x4) (0、000)3≤(x,x2x,x)≤(400400400400) 将模型中的数据矩阵AAcq,向量 c, b, beq, XL, XU输入
第九章 在简约世界里使收益最大----线性规划 §9—1 华尔街公司的投资选择 组合投资问题:总金额 1000 万美圆的资金,用于 投资四种债券。已知 --------------------------------------------------------------------- 债券 年收益率期望值/% 年收益率最低值/% 持续期/年 债券 1 13 6 3 债券 2 8 8 4 债券 3 12 10 7 债券 4 14 9 9 --------------------------------------------------------------------- 希望年收益率期望值达到最大,并且满足下列要求: 1)组合投资的年收益率最低值至少为 8%; 2)组合投资的平均持续期至多为 6 年(各债券的 投资百分比乘持续期,之和); 3)任一债券的投资百分比至多为 40% . 怎样投资? §9—2 组合投资模型 四种债券的投资金额是待定的决策变量,分别记 为 1 2 3 4 x , x , x , x ;目标是年收益率期望值最大;题中的三 条要求是约束条件。得下面优化模型: 0 , , , 400 . 3 2 3 0, 2 2 0, . . 1000, max 0.13 0.08 0.12 0.14 . 1 2 3 4 1 2 3 4 1 3 4 1 2 3 4 1 2 3 4 − − + + − − + + + = + + + x x x x x x x x x x x st x x x x x x x x 在这个模型中,决策变量都是线性的,故称为线性规划。 §9—3 §9—4 线性规划的求解 我们要用 Matlab 求解线性规划,首先必须把线性 规划模型写成适用于 Matlab 命令的标准形式: . , . . , min . xL x xU Aeq x beq st Ax b c x T = (其中,矩阵 A,Aeq,向量 c,b,beq,xL,xU,均为已知数据,x 是 未知向量。) 如,§9—2 中的模型,其适用于 Matlab 的标准形 式为: (0,0,0,0) ( , , , ) (400,400,400,400) . 1 1 1 1 ( , , , ) 1000, , 0 0 ( , , , ) 3 2 1 3 2 0 2 1 . . min ( 0.13, 0.08, 0.12, 0.14) ( , , , ) . 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 T T T T T T x x x x x x x x st x x x x x x x x = − − − − − − − − 将模型中的数据矩阵 A,Aeq,向量 c,b,beq,xL,xU 输入
机器: c=[-0.13:0.08-0.12-0.14] A=[2,0,-2-1;-3,-2,1,3]b=[0,0]; Aeq[l,1,1,1]beq=1000 xL=00.00]xU=400:400:400:400] 再执行命令 [x, fmin F=linprog(c, A, b, Aeq, beq, xL, XU) 输出结果:(x是决策变量的最优解:fmin目标函数的最优值) 400.0000 0.0000 300.0000 300.0000 fmin=-130.0000 答:债券1、债券2、债券3、债券4分别投资400、 0、300、300万美圆,可使年收益率期望值达到最大值 130万美圆,并且满足题目要求 题:总运力问题 某卡车公司拨款800万元用于购买新的运输工具,有3 种运输工具可供选择 A的载重量10吨,平均时速45千米,价格26万元 B的载重量20吨,平均时速40千米,价格36万元 C的载重量18吨,平均时速40千米,价格42万元 其中,C是B的变种,新设了一个卧铺,所以载重降低了、价 格上升了。A需要1名司机,如果每天三班工作,每天可运行 18小时.当地法律规定B和C均需要两名司机,如果三班工 作,B每天可运行18小时,C可运行21小时.该公司目前每 天有150名司机可用,短期内无法招募到其他训练有素的司 机。当地工会禁止司机每天工作超过一个班次。此外,受维 修保障能力的限制,公司最多能拥有30辆运输工具。请你建 立数学模型,确定A、B、C的数量使得公司的总运力最大 解: 设A、B、C的数量分别为X1、X2、X3,则 总运力:104518x1+2040.18x2+1840·21.x3 经费约束:26x1+36x2+42x3≤800 司机人数约束:3x1+6x2+6x3≤150 维修保障约束:x1+x2+x3≤30 实际背景约束:x1,x2x3≥0,且均为整数 以上为模型。以下为程序: c=[-450*18;-800*18-720*21 A=[26,36,4236,61,1,1]b=[800;150;30 Aeq[:beq=l xL=[000xU=[l;1;1]inf; [x, fmin]=linprog(c, A, b, Aeq, beq, XL, XU)
机器: c=[-0.13;-0.08;-0.12;-0.14]; A=[2,0,-2,-1;-3,-2,1,3];b=[0;0]; Aeq=[1,1,1,1];beq=1000; xL=[0;0;0;0];xU=[400;400;400;400]; 再执行命令: [x,fmin]=linprog(c,A,b,Aeq,beq,xL,xU) 输出结果:(x 是决策变量的最优解;fmin 目标函数的最优值) x = 400.0000 0.0000 300.0000 300.0000 fmin = -130.0000 答:债券 1、债券 2、债券 3、债券 4 分别投资 400、 0、300、300 万美圆,可使年收益率期望值达到最大值 130 万美圆,并且满足题目要求。 题:总运力问题 某卡车公司拨款 800 万元用于购买新的运输工具,有 3 种运输工具可供选择: A 的载重量 10 吨,平均时速 45 千米,价格 26 万元; B 的载重量 20 吨,平均时速 40 千米,价格 36 万元; C 的载重量 18 吨,平均时速 40 千米,价格 42 万元。 其中,C 是 B 的变种,新设了一个卧铺,所以载重降低了、价 格上升了。A 需要 1 名司机,如果每天三班工作,每天可运行 18 小时. 当地法律规定 B 和 C 均需要两名司机,如果三班工 作,B 每天可运行 18 小时,C 可运行 21 小时. 该公司目前每 天有 150 名司机可用,短期内无法招募到其他训练有素的司 机。当地工会禁止司机每天工作超过一个班次。此外,受维 修保障能力的限制,公司最多能拥有 30 辆运输工具。请你建 立数学模型,确定 A、B、C 的数量使得公司的总运力最大。 解:设 A、B、C 的数量分别为 x1、x2、x3 ,则 总运力: 10 45 18 1 20 40 18 2 18 40 21 3 x + x + x 经费约束: 26x1 + 36x2 + 42x3 800 司机人数约束: 3x1 + 6x2 + 6x3 150 维修保障约束: x1 + x2 + x3 30 实际背景约束: x1 , x2 , x3 0 ,且均为整数。 以上为模型。以下为程序: c=[-450*18;-800*18;-720*21]; A=[26,36,42;3,6,6;1,1,1];b=[800;150;30]; Aeq=[];beq=[]; xL=[0;0;0];xU=[1;1;1]*inf; [x,fmin]=linprog(c,A,b,Aeq,beq,xL,xU)