数学基础系列(四)----拉格朗日乘子法、行列式、矩阵基础

一、拉格朗日乘子法

1、通俗解释

给个函数:$Z=f(x,y)$如何求出它的极值点呢?有了前面的知识,简单来说直接求它的偏导不就OK了吗?

  

那现在假如说对这个函数加上一个约束条件呢?也就说现在假如有这样一个约束条件$2xy+2yz+2zx=S$,那该怎么样求出函数$Z(x,y,z)=xyz$的最大值呢?

在这样的约束条件下,到底什么点是我们想要的?

假如说我们现在有这样一座山峰,这座山峰的高度是$f(x,y)$,其中有一条曲线是$g(x,y) =C$。曲线镶嵌在山上,我们该如何找到曲线的最低点呢?

  

为了找到曲线上的最低点,首先就从最低的等高线(0那条)开始往上数。数到第三条,等高线终于和曲线有交点了(如上图所示)。因为比这条等高线低的地方都不在约束范围内,所以这肯定是这条约束曲线的最低点了。

而且约束曲线在这里不可能和等高线相交,一定是相切。因为如果是相交的话,如下图所示,那么曲线一定会有一部分在B区域,但是B区域比等高线低,这是不可能的。

  

两条曲线相切,意味着它们在这点的法线平行,也就是法向量只差一个任意的常数乘子(取为$-\lambda $):$\bigtriangledown f(x,y)=-\lambda \bigtriangledown g(x,y)$,其中$\bigtriangledown$表示偏导。

我们可以把上式的右边移到左边,并把常数移进微分算子然后得到:$\bigtriangledown f(x,y)+\lambda \bigtriangledown g(x,y)=0$。

把这个式子重新解释一下,这个就是$f(x,y)+\lambda g(x,y)$无约束情况下极值点的必要条件。简单来说,就是把带有约束条件下的求极值转化为无约束条件下的求极值。

2、使用方法

然后我们看下拉格朗日乘子法具体的使用方法。求解函数:$z=f(x,y)$在条件$\varphi (x,y)=0$条件下的极值。

既然求极值,那就是令其偏导等于0。

构造函数$F(x,y)=f(x,y)+\lambda \varphi(x,y)$,其中$\lambda$为拉格朗日乘数。如此,我们就可以得到下面的这个表达式

  

这样通过上面的方程组求解出来的(X,Y)就是极值点坐标。

拉格朗日乘子法一般用于自变量多于两个的条件下。

求解函数:$u=f(x,y,z,t) $在条件$\varphi (x,y,z,t)=0,\psi (x,y,z,t)=0$下的极值。

同理构造函数:$F(x,y,z,t)=f(x,y,z,t) +\lambda _{1}\varphi (x,y,z,t)+\lambda _{2}\psi (x,y,z,t)$。其中$\lambda _{1},\lambda _{2}$均为拉格朗日乘数,同样通过偏导为0以及约束条件求解极值点坐标。

3、例题

求函数$u=x^{3}y^{2}z$在约束条件x+y+z=12下的最大值。

同理构造函数:$F(x,y,z)=x^{3}y^{2}z+\lambda (x+y+z-12)$。然后分别求偏导,得到如下表达式。

$\left\{\begin{matrix}
F_{x}‘=3x^{2}y^{2}z+\lambda =0\\
F_{y}‘=2x^{3}yz+\lambda =0\\
F_{z}‘=x^{3}y^{2}+\lambda =0\\
x+y+z=12
\end{matrix}\right.$

求解上面的方程组可以得到唯一驻点(6,4,2),这样的话最大值$u_{max}=6^{3}\cdot 4^{2}\cdot 2=6912$。

二、行列式

1、二阶行列式

首先来看看二元线性方程组的求解:$\left\{\begin{matrix}a_{11}x_{1}+a_{12}x_{2}=b_{1}\\ a_{21}x_{1}+a_{22}x_{2}=b_{2}\end{matrix}\right.$

对上面这个方程组求解可得:$\begin{matrix}(a_{11}a_{22}-a_{12}a_{21})x_{1}=b_{1}a_{22}-a_{12}b_{2}\\ (a_{11}a_{22}-a_{12}a_{21})x_{2}=a_{11}b_{2}-b_{1}a_{21}\end{matrix}$。

当$a_{11}a_{22}-a_{12}a_{21}\neq 0$时方程组有唯一解:$x_{1}=\frac{b_{1}a_{22}-a_{12}b_{2}}{a_{11}a_{22}-a_{12}a_{21}},x_{2}=\frac{a_{11}b_{2}-b_{1}a_{21}}{a_{11}a_{22}-a_{12}a_{21}}$。

根据上面的解看起来好像有些规律呀

  

表达式$a_{11}a_{22}-a_{12}a_{21}$即为二阶行列式。

$D=\begin{vmatrix}a_{11} & a_{12}\\ a_{21} & a_{22}\end{vmatrix}=a_{11}a_{22}-a_{12}a_{21}$。其中aij(i=1,2;j=1,2)称为元素。i代表行标,j代表列标。

2、三阶行列式

二阶看起来挺容易就算出来了,三阶的呢?

  

3、例题

计算$D=\begin{vmatrix}1 & 2 & -4\\ -2 & 2 & 1\\ -3 & 4 & -2\end{vmatrix}$的行列式。

  

三、矩阵

1、何为矩阵

某航空公司在A,B,C,D四城市之间开辟了若干航线,如图所示表示了四城市间的航班图,如果从A到B有航班,则用带箭头的线连接 A 与B。

  

如果说我们用表格的形式来表示这种关系并且用1和0来表示城市之间是否联通。

  

何为矩阵:输入的数据就是矩阵,对数据做任何的操作都是矩阵的操作了。

  

矩阵的组成:矩阵是由行和列来组成的:

  

矩阵的特殊形式:行向量与列向量。$\begin{pmatrix}a_{1} & a_{2} & \cdots  & a_{n}\end{pmatrix}$,$\begin{pmatrix}a_{1}\\ a_{2}\\ \vdots \\ a_{n}\end{pmatrix}$

2、行列式与矩阵的区别

  

方阵:行和列的数量一样就是方阵了,一般叫做n阶方阵。

  

下面介绍几种特殊的矩阵

  

同型矩阵和矩阵相等是一个事吗?

两个矩阵行列数相同的时候称为同型矩阵,例如$\begin{pmatrix}1 & 2\\ 2 & 3\end{pmatrix}$与$\begin{pmatrix}2 & 4\\ 1 & 2\end{pmatrix}$

在同型的前提下,并且各个元素相等,这就是矩阵相等了:

  

3、矩阵的基本运算

假如说有两个$M\times N$的矩阵$A=(a_{ij}),B=(b_{ij})$:

  

矩阵乘法的运算规律:

  

注意:矩阵的乘法是没有交换律的

原文地址:https://www.cnblogs.com/xiaoyh/p/12070859.html

时间: 2024-10-10 03:16:03

数学基础系列(四)----拉格朗日乘子法、行列式、矩阵基础的相关文章

非负矩阵分解(3):拉格朗日乘子法求解

作者:桂. 时间:2017-04-07  07:11:54 链接:http://www.cnblogs.com/xingshansi/p/6679325.html 声明:欢迎被转载,不过记得注明出处哦~ 前言 最近发这类文章,动不动就被管理员从首页摘除,如果你觉得这个文章还说得过去,麻烦帮忙点个赞吧,这样移除的概率小一些.... 本文为非负矩阵分解系列第三篇,在第二篇中介绍了不同准则下乘法算法的推导及代码实现,这里不免有一个疑问:明明是一个约束的优化问题,虽然乘法算法巧妙地将其变为一个无约束优化

关于拉格朗日乘子法与KKT条件

关于拉格朗日乘子法与KKT条件 关于拉格朗日乘子法与KKT条件 目录 拉格朗日乘子法的数学基础 共轭函数 拉格朗日函数 拉格朗日对偶函数 目标函数最优值的下界 拉格朗日对偶函数与共轭函数的联系 拉格朗日对偶问题 如何显式的表述拉格朗日对偶问题 由定义消去下确界 隐式求解约束 共轭函数法 弱对偶 强对偶 原始问题与对偶问题的关系 最优条件 互补松弛条件 KKT条件 一般问题的KKT条件 凸问题的KKT条件 KKT条件的用途 拉格朗日乘数法的形象化解读 等式约束的拉格朗日乘子法 含有不等约束的情况

机器学习中的数学——拉格朗日乘子法

拉格朗日乘子法:应用在求有约束条件的函数的极值问题上. a. 对于没有约束的函数求极值,只要求导,令导函数等于零即可. b. 对于约束条件是等式的函数. 目标函数:f(x), 约束条件:g(x)=0 求解f(x)在此约束条件下的极值. 定义拉格朗日函数 : L(x,λ)=f(x)+ λg(x) 分别对参数求偏导数,置零.

拉格朗日乘子法

基本的拉格朗日乘子法是求函数f(x1,x2,...)在g(x1,x2,...)=0的约束条件下的极值的方法. 主要思想:引入一个新的参数λ(即拉格朗日乘子),将约束条件函数与原函数联系到一起,使能配成与变量数量相等的等式方程,从而求出得到原函数极值的各个变量的解. 假设需要求极值的目标函数为f(x,y),限制条件为φ(x,y)=M 解:设g(x,y)=M-φ(x,y) 定义一个新函数:F(x,y,λ)=f(x,y)+λg(x,y) 则用偏导数方法列出方程:?F/?x=0,?F/?y=0,?F/?

拉格朗日乘子法(Lagrange Multiplier)和KKT条件

拉格朗日乘子法:对于等式约束的优化问题,求取最优值. KKT条件:对于含有不等式约束的优化问题,求取最优值. 最优化问题分类: (1)无约束优化问题: 常常使用Fermat定理,即求取的导数,然后令其为零,可求得候选最优值. (2)有等式约束的优化问题:, 使用拉格朗日乘子法,把等式约束用一个系数与写为一个式子,称为拉格朗日函数.再通过对各个参数求取导数,联立等式进行求取最优值. (3)有不等式约束的优化问题.,,. 把所有的不等式约束.等式约束和目标函数全部写为一个式子:. KKT条件的最优值

增广拉格朗日乘子法(Augmented Lagrange Method)

转载自:增广拉格朗日乘子法(Augmented Lagrange Method) 增广拉格朗日乘子法的作用是用来解决等式约束下的优化问题, 假定需要求解的问题如下: minimize f(X) s.t.: h(X)=0 其中,f:Rn->R; h:Rn->Rm 朴素拉格朗日乘子法的解决方案是: L(X,λ)=f(X)+μh(X); μ:Rm 此时,求解L对X和μ的偏导同时为零就可以得到最优解了. 增广拉格朗日乘子法的解决方案是: Lc(x,λ)=f(X)+μh(X)+1/2c|h(X)|2 每

深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件

在求取有约束条件的优化问题时,拉格朗日乘子法(Lagrange Multiplier) 和KKT条件是非常重要的两个求取方法,对于等式约束的优化问题,可以应用拉格朗日乘子法去求取最优值:如果含有不等式约束,可以应用KKT条件去求取.当然,这两个方法求得的结果只是必要条件,只有当是凸函数的情况下,才能保证是充分必要条件.KKT条件是拉格朗日乘子法的泛化.之前学习的时候,只知道直接应用两个方法,但是却不知道为什么拉格朗日乘子法(Lagrange Multiplier) 和KKT条件能够起作用,为什么

拉格朗日乘子法 那些年学过的高数

最近在做通信网络相关的仿真,今天拿到了一些别人仿真的代码来学习,其中看到了一个double Lambda[T_Node_Number][M][Low_iteration];的参数,注释写着拉格朗日乘子式.本来对于这个名词感觉很陌生,后来查了一些资料,才回忆起这似乎是大一高数曾经学过的知识,经查书,果不其然,高数下P113页 条件极值拉格朗日法讲的就是这个内容.以前被忽视的知识点,再次重现,我觉得要好好学习一下.一下是学习笔记: 如何理解 先看一个二维的例子:假设有函数:f(x,y),要求其极值(

拉格朗日乘子法与KKT条件

拉格朗日乘子法 \[ min \quad f = 2x_1^2+3x_2^2+7x_3^2 \\s.t. \quad 2x_1+x_2 = 1 \\ \quad \quad \quad 2x_2+3x_3 = 2 \] \[ min \quad f = 2x_1^2+3x_2^2+7x_3^2 +\alpha _1(2x_1+x_2- 1)+\alpha _2(2x_2+3x_3 - 2) \] \[ \dfrac{\partial f}{\partial x_1}=4x_1+2\alpha_1