Matlab数学建模(五):优化模型之标准模型
一、学习目标
(1)了解最优化模型。
(2)掌握线性规划的优化求解。
(3)掌握整数规划的优化求解。
(4)了解Matlab的图形化应用。
二、实例演练
1、谈谈你对最优化模型的了解。
最优化模型是数学建模大赛中最常见的问题类型之一。一般说来,凡是寻求最大、最小、最远、最近、最经济、最丰富、最高效、最耗时的目标,都可以划入优化问题的范畴。MATLAB 优化工具箱和全局优化工具箱对多个优化问题提供了完整的解决方案,前者涵盖了线性规划、混合整型线性规划、二次规划、非线性优化、非线性最小二乘的求解器,后者囊括了全局搜索、多初始点、模式搜索、遗传算法等求解算法。
最优化即在一定的条件下,寻求使目标最小(大)的设计参数或决策。在优化问题中有两个关键对象:目标函数和约束条件。哈哈哈,这让笔者想起来高中学到的线性规划,其实,本节谈到的最优化模型跟高中的线性规划还真有点像。不过,高中的线性规划问题约束条件很少,一般是通过作图法来求解。本节的最优化模型约束条件一般比高中的线性规划多很多,并且我们要通过写代码去求解,而不是作图。常规优化问题,其数学表达可以描述为:
其中x 为长度n的决策变量向量,f(x) 为目标函数,G(x) 为约束函数。
以上数学表达式看不明白也没关系,因为下面我们会通过两个具体的例子去讲解分析。
求解目标函数的最小(大)值,一个高效而精确的解决方案不仅取决于约束条件和变量数量,更取决于目标函数和约束函数的特性。明确优化类型是确认优化方案的前提,让我们看一下这些特性如何划分:
常见的目标函数有:
线性规划:被广泛的应用于变量之间可线性表示的财务、能源、运营研究等现代管理领域中。
混合整数线性规划:扩展了线性规划问题,增加了最优解中部分或全部变量必须是整数的约束。例如,如果一个变量代表要认购的股票数量,则只应取整数值。同样,如果一个变量代表发电机的开/关状态,则只应取二进制值(0 或 1)。
二次规划:目标函数或约束函数为多元二次函数。此优化应用于财务金融中投资组合优化、发电厂发电优化、工程中设计优化等领域。
最小二乘:分为线性和非线性,通过最小化误差的平方和寻找变量的最优函数匹配。非线性最小二乘优化还可用于曲线拟合。
对 MATLAB 提供的各类优化问题的算法,我们称之为求解器(Solver)。根据其求解目标,被分为四大组:
-
极小值优化组:找到目标函数出发点 x0 附近的局部极小值
-
多目标优化组:找到最小化一组函数的最大值或指定的值
-
方程求解组:找到非线性方程 f(x) = 0 出发点 x0 附近的解
-
最小二乘法(
qq_37779113: 我试了。现在这个软件已经没有关闭杀毒模式的选项。直接用这个重装的话Linux就起不来了
旧巷少年208: A,b怎么来的呀
MXT6_: 我的也是,你现在知道为什么了吗?
MXT6_: 我的为啥不出图啊
MXT6_: 可以交流一下吗?