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. 无约束优化方法(梯度法-牛顿法-BFGS- L-BFGS)

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

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

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

  4. Visual Studio for Mac 安装无响应或者无法连接网络等解决方法

    1.无法连接到网络 2.点击安装和更新无响 这两种情况造成的原因都是由于被墙的原因,第一种情况有部分可以通过fq解决,第二种情况是我遇到过的 反正我全局也失败 这里给出一个我自己用过的解决方案 查看控 ...

  5. Android中实现全屏、无标题栏的两种办法

    在进行UI设计时,我们经常需要将屏幕设置成无标题栏或者全屏.要实现起来也非常简单,主要有两种方法:配置xml文件和编写代码设置. 1.在xml文件中进行配置 在项目的清单文件AndroidManife ...

  6. 梯度下降之随机梯度下降 -minibatch 与并行化方法

    问题的引入: 考虑一个典型的有监督机器学习问题,给定m个训练样本S={x(i),y(i)},通过经验风险最小化来得到一组权值w,则现在对于整个训练集待优化目标函数为: 其中为单个训练样本(x(i),y ...

  7. Android:实现无标题的两种方法

    实现无标题的两种方法:配置xml文件和编写代码设置 1.在AndroidManifest.xml文件中进行配置 实现全屏效果: android:theme="@android:style/T ...

  8. Android中两种设置全屏或者无标题的方法

    在开发中我们经常需要把我们的应用设置为全屏或者不想要title, 这里是有两种方法的,一种是在代码中设置,另一种方法是在配置文件里改: 一.在代码中设置: package jason.tutor; i ...

  9. Android中实现全屏、无标题栏的两种办法(另附Android系统自带样式的解释)

    在进行UI设计时,我们经常需要将屏幕设置成无标题栏或者全屏.要实现起来也非常简单,主要有两种方法:配置xml文件和编写代码设置. 1.在xml文件中进行配置 在项目的清单文件AndroidManife ...

  10. ng机器学习视频笔记(二) ——梯度下降算法解释以及求解θ

    ng机器学习视频笔记(二) --梯度下降算法解释以及求解θ (转载请附上本文链接--linhxx)   一.解释梯度算法 梯度算法公式以及简化的代价函数图,如上图所示. 1)偏导数 由上图可知,在a点 ...

随机推荐

  1. 如何在 IDEA 中使用Maven 及 相应插件

    1,Maven 面板 Root ,相当于 VS 中的 sln ? ,大概可以这样理解吧. clean  --> install  这样操作, 所有的项目都会被执行. 手工操作有点麻烦.换另一种方 ...

  2. ASP.NET 5系列教程 (六): 在 MVC6 中创建 Web API

    ASP.NET 5.0 的主要目标之一是统一MVC 和 Web API 框架应用. 接下来几篇文章中您会了解以下内容: ASP.NET MVC 6 中创建简单的web API. 如何从空的项目模板中启 ...

  3. MySQL数据库创建表报错的解决方案

    实体类 package com.tao.pojo; public class Student { private String id; private String name; private Str ...

  4. ****** 四十 ******、软设笔记【网络基础】-Internet和Intranet基础

    Internet和Intranet基础 一.网络地址及子网掩码 1.IP地址结构及类别 IP地址是由32位二进制数,即4个字节组成的,由网络号和主机号两个字段组成. 网络号的位数决定了可以分配的网络数 ...

  5. Rookey.Frame企业级极速开发框架

    项目详细介绍 Rookey.Frame是一套基于.NET MVC + easyui的企业级极速开发框架,支持简单逻辑模块零代码编程.支持工作流(BPM).支持二次开发,具有高扩展性.高复用性.高伸缩性 ...

  6. 如何用cmd命令递归文件夹中的所有特定文件,拷贝到另一个文件夹中

    现在有一个文件夹,里面有很多子文件夹,每个子文件夹中有很多不同类型的图片,现在想将其所有.png图片整理出来,一开始我是手动拷贝的,拷贝了几个图片后,突然想能不能让计算机来自动完成此项功能,经过一番尝 ...

  7. 补码的来源以及为什么byte的最小值是-128

    1.        有符号数和无符号数 我们的实数分为正数和负数和0三部分 Byte数据类型一共有8位,如果是无符号数,最大可以表示的数为11111111 = 256 -1 = 255 无符号数代指不 ...

  8. 四则运算APP

    1)   N (Need 需求) 用户基本需求:随机生成四则运算,能自动判定对错,答错时能提示正确答案! 在这个基础上,我的创意: 多用户模式,能记录用户的答题情况(登陆功能) 分级挑战,按照不同的水 ...

  9. SpringBoot集成ActiveMQ

    前面提到了原生API访问ActiveMQ和Spring集成ActiveMQ.今天讲一下SpringBoot集成ActiveMQ.SpringBoot就是为了解决我们的Maven配置烦恼而生,因此使用S ...

  10. HO引擎近况20190110

    前两天更新完,挺兴奋 趁着兴奋把虚拟机里面的MACOSX从10.12.6升级到了10.14 然后装XCODE,虽然比较熟悉了,但是架不住慢啊 先下载了一个DMG的镜像文件,用不了,转成ISO也不行 然 ...