2.1 求解梯度的两种方法

以$f(x,y)={{x}^{2}}+{{y}^{3}}$为例,很容易得到:

$\nabla f=\left[ \begin{aligned}& \frac{\partial f}{\partial x} \\& \frac{\partial f}{\partial y} \\\end{aligned} \right]=\left[ \begin{aligned}& 2x \\& 3{{y}^{2}} \\\end{aligned} \right]$

这样就很容易求得某一点的梯度。

但是如果梯度的表达式很难写出来,或者根本就写不出来的时候,尤其定义去求梯度可是可以的:

$\nabla f=\left[ \begin{aligned}& \frac{\partial f}{\partial x} \\& \frac{\partial f}{\partial y} \\\end{aligned} \right]=\left[ \begin{aligned}& \frac{f(x+\Delta x,y)-f(x,y)}{\Delta x} \\& \frac{f(x,y+\Delta y)-f(x,y)}{\Delta y} \\\end{aligned} \right]$

在实际算的过程中这里的$\Delta x$,$\Delta y$也不用取太小一般$1\times {{10}^{-7}}$左右就可以了。

2.2 某些有约束优化问题可以转化为无约束优化问题:

\[\begin{aligned}& \operatorname{minimize}\text{  }f({{x}_{1}},{{x}_{2}})\text{         }\operatorname{minimize}\text{  }f({{x}_{1}},{{x}_{2}}) \\& \text{               }{{x}_{1}}>0\text{      }\Rightarrow \text{                   }{{x}_{1}}={{{\hat{x}}}^{2}}_{1} \\& \text{               }{{x}_{2}}\le -30\text{                         }-\text{30}-{{x}_{2}}\text{=}{{{\hat{x}}}^{2}}_{2}\text{ }\Rightarrow -\text{30}-{{{\hat{x}}}^{2}}_{2}\text{=}{{x}_{2}} \\\end{aligned}\]

把上式中左边的不等式优化,转化为右边的等式优化,再把等式代入目标函数中,形成了式(24)这样的无约束优化问题:

\[\operatorname{minimize}\text{  }f({{\hat{x}}_{1}},{{\hat{x}}_{2}})\]

通过优化求解得到满足上式的次优解$\left( {{{{\hat{x}}'}}_{1}},{{{{\hat{x}}'}}_{2}} \right)$,则原优化问题的解可以写为:

\[\begin{aligned}& \text{ }{{x}_{1}}={{\left( {{{{\hat{x}}'}}_{\text{1}}} \right)}^{\text{2}}} \\& {{x}_{2}}\text{=}-\text{30}-{{\left( {{{{\hat{x}}'}}_{2}} \right)}^{\text{2}}} \\\end{aligned}\]

这样的做法会增加目标函数的非线性度,但是很好的把有约束问题转变为无约束问题。下面这个带约束的优化问题同样可以用上述方式处理:

\[\begin{aligned}& \operatorname{minimize}\text{  }f({{x}_{1}},{{x}_{2}})\text{         }\operatorname{minimize}\text{  }f({{x}_{1}},{{x}_{2}}) \\ & \text{               3}\le {{x}_{1}}\le 12\text{      }\Rightarrow \text{                   } \\\end{aligned}\]

这里的转化,我想着用Sigmoid函数(logistic函数):

$f\left( x \right)=\frac{1}{1+{{e}^{-x}}}$

它的图像如下:

这样就可以用下面这个式子代替上述对${{x}_{1}}$的约束:

${{x}_{1}}=\frac{9}{1+{{e}^{-\hat{x}}}}+3$

它的图像如下

02(e)多元无约束优化问题- 梯度的两种求解方法以及有约束转化为无约束问题的更多相关文章

  1. ChemDraw Pro绘制无环链结构的两种方法

    ChemDraw Pro 14是一款专门针对化学图形绘制而开发制作的编辑软件,是目前工科类常用的绘制化学结构工具,用于快速绘制常用的环结构组成.以下教程讲解ChemDraw Pro绘制无环链结构的两种 ...

  2. 02(b)多元无约束优化问题-最速下降法

    此部分内容接02(a)多元无约束优化问题的内容! 第一类:最速下降法(Steepest descent method) \[f({{\mathbf{x}}_{k}}+\mathbf{\delta }) ...

  3. 02(c)多元无约束优化问题-牛顿法

    此部分内容接<02(a)多元无约束优化问题>! 第二类:牛顿法(Newton method) \[f({{\mathbf{x}}_{k}}+\mathbf{\delta })\text{ ...

  4. 02(a)多元无约束优化问题

    2.1 基本优化问题 $\operatorname{minimize}\text{    }f(x)\text{       for   }x\in {{R}^{n}}$ 解决无约束优化问题的一般步骤 ...

  5. 02(d)多元无约束优化问题-拟牛顿法

    此部分内容接<02(a)多元无约束优化问题-牛顿法>!!! 第三类:拟牛顿法(Quasi-Newton methods) 拟牛顿法的下降方向写为: ${{\mathbf{d}}_{k}}= ...

  6. 无约束优化方法(梯度法-牛顿法-BFGS- L-BFGS)

    本文讲解的是无约束优化中几个常见的基于梯度的方法,主要有梯度下降与牛顿方法.BFGS 与 L-BFGS 算法. 梯度下降法是基于目标函数梯度的,算法的收敛速度是线性的,并且当问题是病态时或者问题规模较 ...

  7. 01(b)无约束优化(准备知识)

    1.解方程转化为优化问题 $n\left\{ \begin{aligned}& {{P}_{1}}(x)=0 \\ & {{P}_{2}}(x)=0 \\ & \text{   ...

  8. 无约束优化算法——牛顿法与拟牛顿法(DFP,BFGS,LBFGS)

    简介:最近在看逻辑回归算法,在算法构建模型的过程中需要对参数进行求解,采用的方法有梯度下降法和无约束项优化算法.之前对无约束项优化算法并不是很了解,于是在学习逻辑回归之前,先对无约束项优化算法中经典的 ...

  9. MATLAB进行无约束优化

    首先先给出三个例子引入fminbnd和fminuc函数求解无约束优化,对这些函数有个初步的了解 求f=2exp(-x)sin(x)在(0,8)上的最大.最小值. 例2 边长3m的正方形铁板,四角减去相 ...

随机推荐

  1. linux C 内存管理方式之半动态

    看到半动态申请内存,第一反应这是什么鬼? 实际上半动态内存申请很容易理解,在GNU C中使用alloca函数来实现 #include <stdlib.h> void *alloca (si ...

  2. Delphi 调用C/C++的Dll(stdcall关键字, 会导致函数名分裂. 此时函数名变成_stdadd@8)

    delphi调用C++写的Dll, 当然这个Dll要求是非MFC的Dll, 这样子才能被delphi调用. 根据C++定义函数的情况, Delphi有不同的相对应的处理方法.1. 声明中不加__std ...

  3. facebook javascript api 使用

    官方api文档:http://developers.facebook.com/docs 先简单的介绍下创建一个app(https://developers.facebook.com/apps),

  4. 数据绑定(四)使用DataContext作为Binding的Source

    原文:数据绑定(四)使用DataContext作为Binding的Source DataContext属性被定义在FrameworkElement类里,这个类是WPF控件的基类,这意味着所有WPF控件 ...

  5. git 专题

    $ git pull origin test // git pull合并代码的时候,若发生冲突,会处于merging状态,检查代码,发现自己的分支低于主分支,这个时候想撤销merge // 撤销mer ...

  6. LINUX 蓝牙耳机的配置方法

    由于经常使用SKYPE聊天打电话,一直觉得被拴在电脑前面不是很自由,终于在一个周末,一激动买了一个蓝牙耳机.经过几天的努力在Linux/Debian上用了起来,现在就把这个配置过程和大家分享. 第一 ...

  7. 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画

    原文:零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形 ...

  8. TApplicationEvents的前世今生(待续)

    这是它的声明,它的数据成员全部都是Event,而没有真正意义上的数据(如此一来,几乎可以猜测,它本身什么都做不了): TCustomApplicationEvents = class(TCompone ...

  9. 跨越DLL边界传递CRT对象潜在的错误

    跨越DLL边界传递CRT对象潜在的错误 翻译:magictong(童磊)2013年5月 版权:microsoft 原文地址:http://msdn.microsoft.com/en-us/librar ...

  10. <房间内功能>打赏小动画

    截图如下 :        功能:   每次点击礼物,都要通过动画显示一个小图标,最多显示两行图标栏,送多次会显示然后再次显示,显示 XX 送给 XX 一个小礼物的动画样式.动画样式效果为,整体动画模 ...