实验三十用MATLAB求解线性规划问题.ppt
实验三十用MATLAB求解线性规划问题了解MATLAB的优化工具箱,能利用MATLAB求解线性规划问题。二、相关知识线性规划是运筹学中研究得比较早,理论上已趋于成熟,在方法上非常有效,并且应用广泛的一个重要分支。线性规划的数学模型有各种不同的形式,其一般形式可以写为:目标函数为,约束条件为:010302这里称为目标函数,称为价值系数,称为价值向量,为求解的变量,由系数组成的矩阵这里称为目标函数,称为价值系数,称为价值向量,为求解的变量,由系数组成的矩阵称为不等式约束矩阵,由系数组成的矩阵称为等式约束矩阵,123列向量和为右端向量,条件称为非负约束。01一个满足约束条件的向量,称为可行解或可行点,所有可行点的集合称为可行区域,达到目标函数值最大的可行解称为该线性规划的最称为不等式约束矩阵,由系数组成的矩阵01称为等式约束矩阵,011列向量和为右端向量,条件称为非负约束。2一个满足约束条件的向量,称为可行解或可行点,所有可行点的集合称为可行区域,达到目标函数值最大的可行解称为该线性规划的最优解,相应的目标函数值称为最优目标函数值,简称最优值。3求解线性规划问题已有一些成熟的方法,我们这里介绍利用MATLAB来求解线性规划问题的求解。求解线性规划问题已有一些成熟的方法,我们这里介绍利用MATLAB来求解线性规划问题的求解。在MATLAB中有一个专门的函数linprog()来解决这类问题,我们知道,极值有最大和最小两种,但求优解,相应的目标函数值称为最优目标函数值,简称最优值。求解线性规划问题已有一些成熟的方法,我们这里介绍利用MATLAB来求解线性规划问题的求解。求解线性规划问题已有一些成熟的方法,我们这里介绍利用MATLAB来求解线性规划问题的求解。在MATLAB中有一个专门的函数linprog()来解决这类问题,我们知道,极值有最大和最小两种,但求的极大就是求的极小,因此在MATLAB中以求极小为标准形式,函数linprog()的具体格式如下:X=linprog(f,A,b)[X,fval,exitflag,ouyput,lamnda]=linprog(f,A,b,Aeq,Beq,LB,UB,X0,options)[X,fval,exitflag,ouyput,lamnda]=linprog(f,A,b,Aeq,Beq,LB,UB,X0,options)04X=linprog(f,A,b)05这里X是问题的解向量,01A是一个矩阵,b是一个向量,A,b和变量x={x1,x2,…,xn}一起,表示了线性规划中不等式约束条件,A,b是系数矩阵和右端向量。的极大就是求的极小,因此在MATLAB中以求极小为标准形式,函数linprog()的具体格式如下:03f是由目标函数的系数构成的向量,02这里X是问题的解向量,f是由目标函数的系数构成的向量,A是一个矩阵,b是一个向量,A,b和变量x={x1,x2,…,xn}一起,表示了线性规划中不等式约束条件,A,b是系数矩阵和右端向量。Aeq和Beq表示了线性规划中等式约束条件中的系数矩阵和右端向量。LB和UB是约束变量的下界和上界向量,X0是给定的变量的初始值,options为控制规划过程的参数系列。返回值中fval是优化结束后得到的目标函数值。exitflag=0表示优化结果已经超过了函数的估计值或者已声明的最大迭代次数;exitflag0表示优化过程中变量收敛于解X,exitflag0表示不收敛。output有3个分量,iterations表示优化过程的迭代次数,Aeq和Beq表示了线性规划中等式约束条件中的系数矩阵和右端向量。LB和UB是约束变量的下界和上界向量,X0是给定的变量的初始值,options为控制规划过程的参数系列。返回值中fval是优化结束后得到的目标函数值。3214exitflag=0表示优化结果已经超过了函数的估计值或者已声明的最大迭代次数;