MATLAB线性规划学习笔记 | 您所在的位置:网站首页 › 线性规划问题实验心得体会 › MATLAB线性规划学习笔记 |
目录
线性规划的标准型一般线性规划问题的数学表达式标准型:一般线性规划问题的matlab标准型:
线性规划例题例题1:线性回归问题的线性规划求解例题2:飞机轰炸
小结
线性规划的标准型
一般线性规划问题的数学表达式标准型:
a和b构成约束条件,用来约束决策变量。 一般线性规划问题的matlab标准型:
向量x 的值。还有其它的一些函数调用形式(在 Matlab 指令窗运行 help linprog 可以看到所有的函数调 用形式),如: OPTIONS 是控制参数。 线性规划例题 例题1:线性回归问题的线性规划求解
为了建立线性规划模型,我们引入绝对离差的概念 。用d 1 i _{1i} 1i表示正离差,d 2 i _{2i} 2i表示负离差 (离差值均大于0)。则我们可以得到如下线性规划约束等式: MATLAB代码求解如下: clear all x=[143,145,146,147,149,150,153,154,155,156,157,158,159,160,162,164]'; y=[88,85,88,91,92,93,93,95,96,98,97,96,98,99,100,102]'; n=ones(size(x)); Aeq=[n,x]; beq=y; A=[];b=[]; k=length(x); f=[0 0]; lb=[-100,-100];ub=[100,100]; for i=1:k%构造约束条件,和决策变量 p=zeros(k,2); f=[f,1,1]; lb=[lb,0,0]; ub=[ub,100,100]; p(i,:)=[1,-1]; Aeq=[Aeq,p]; end [d,fval]=linprog(f,A,b,Aeq,beq,lb,ub) h=140:0.1:164; g=d(1)+d(2).*h; X=[n,x]; b=regress(y,X);%调用线性回归的regress函数 g1=b(1)+b(2).*h; plot(x',y','*',h,g,'-',h,g1,'-','LineWidth',1); legend('实际投点','绝对值偏差','regress函数') grid onx和y的值是网上找的一个线性回归问题的数据。决策变量一共有34个,前两个为我们所需要的拟合直线 的系数,后面的变量均为正负离差值。就是b 0 _{0} 0,b 1 _{1} 1,d 11 _{11} 11,d 21 _{21} 21,d 12 _{12} 12,d 22 _{22} 22,… 这是Aeq的数据结构如下:
本文给出了线性规划的基本模型,和简单的求解方法。第一道例题侧重于约束函数的构造以及决策变量的构造技巧,第二道例题侧重于将非线性问题线性化。 参考文献:【1】线性规划在多元线性回归中的解法及应用。张爱兰,唐虹。昆明理工大学学报(自然科学版)39卷第1期,2014年2月。 |
CopyRight 2018-2019 实验室设备网 版权所有 |