【运筹学】前言:基础知识

news2024/11/15 12:03:48

💞💞 前言

hello hello~ ,这里是大耳朵土土垚~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹
在这里插入图片描述

💥个人主页:大耳朵土土垚的博客
💥 所属专栏:运筹学基础
这里将会不定期更新有关运筹学的内容,希望大家多多点赞关注收藏💖💖

线性代数是通过一系列的手段去”折腾“方程组,提取其系统信息;
而运筹学要解决一般视角下的最优化问题,寻求最好的解决办法,也就是寻找一般函数的最大最小值问题。
关于寻求最优解我们要记住两步:
第一步我们要数学建模,第二步求解这个数学模型

在学习运筹学之前我们先要储备一些高数相关知识,比如极值最值,通过拉格朗日乘数法求解极值等。

高数基础

1.最值和极值

最值:整体性
极值:局部性
设f(x)在 x 0 x_0 x0的邻域(附近),若存在ɛ,使得在区间( x 0 x_0 x0-ɛ, x 0 x_0 x0+ɛ)上f(x)>=f( x 0 x_0 x0)(或者f(x)=<f( x 0 x_0 x0)),则f( x 0 x_0 x0)为极小值(或者极大值)

2.费马定理

这里定义是自己理解得出并不代表标准的定义:

f( x 0 x_0 x0)是极值并且f(x)在 x 0 x_0 x0处可导,则f’( x 0 x_0 x0) = 0;

注意这里不能反推:
例如f(x) = x 3 x^3 x3 在x=0处f’(0) = 0,但是f(0)并不是极值

3.利用费马定理求最值

条件

f(x)定义域[a,b],连续可导

解决思路

找出所有极值点,在加上边界点a,b,代入f(x),最后一起比较出最值

而找出所有极值点就可以利用费马定理,通过找出导数为0的点来规避求极值,先不管求出来的是不是极值点,反正最后和边界点一起代入原函数,找出最大最小值就行。
例题
f ( x ) = 3 x 2 − 6 x + 7 f(x) = 3x^2 - 6x +7 f(x)=3x26x+7 定义域[-10,50]

第一步:求导

①f’(x) = 6x-6

第二步:求导数为0时x值

f’(x) = 6x-6=0
②x=1

第三步将x=1和边界点-10和50带入f(x)中,求出最值

③f(1) = 4
④f(-10) = 367
⑤f(50) = 7207

最值为7207,这样就规避了先求极值再求最值

如果定义域为[10,20]就不需要求f(1)了,直接比较边界点就行

4.多元函数的极值与最值

✨拉格朗日乘数法

引例: 求最值

目标函数:

w = f ( x , y , z ) = 3 x 2 + 2 y 2 − 4 z 2 w=f(x,y,z)=3x^2+2y^2-4z^2 w=f(x,y,z)=3x2+2y24z2

约束条件:

g 1 : 3 x + 4 y − z = 0 g_1 : 3x+4y-z=0 g1:3x+4yz=0
g 2 : 6 x 2 + y − z 2 = 0 g_2 : 6x^2+y-z^2=0 g2:6x2+yz2=0

拉格朗日乘数法求解

(1)构造新函数

几个约束条件就引入几个拉格朗日乘子,这里有两个约束条件 g 1 g_1 g1 g 2 g_2 g2,就引入两个拉格朗日乘子 ʎ 1 ʎ_1 ʎ1 ʎ 2 ʎ_2 ʎ2来构造一个新函数 F ( x , y , z , ʎ 1 , ʎ 2 ) = f ( x , y , z ) + ʎ 1 ∗ g 1 + ʎ 2 ∗ g 2 F(x,y,z,ʎ_1,ʎ_2) = f(x,y,z) + ʎ_1*g_1 +ʎ_2*g_2 F(x,y,z,ʎ1,ʎ2)=f(x,y,z)+ʎ1g1+ʎ2g2

(2)求偏导,并令偏导等于0

{ ə F ə x = 6 x + 3 ʎ 1 x + 12 ʎ 2 x = 0 ə F ə y = 0 ə F ə z = 0 ə F ə ʎ 1 = 0 ə F ə ʎ 2 = 0 \begin{cases} \frac{əF}{əx} = 6x +3ʎ_1x + 12ʎ_2x = 0\\ \frac{əF}{əy} = 0\\ \frac{əF}{əz} = 0\\ \frac{əF}{əʎ_1} = 0\\ \frac{əF}{əʎ_2} = 0 \end{cases} əxəF=6x+3ʎ1x+12ʎ2x=0əyəF=0əzəF=0əʎ1əF=0əʎ2əF=0

求出偏导将其等于0,求出解,代入原函数f(x,y,z)中,求出最值

以上就是拉格朗日乘数法的使用,接下来我们做一道例题巩固一遍

例题:
在抛物面 z = ( x + 2 ) 2 + 1 4 y 2 z=(x+2)^2 + \frac{1}{4}y^2 z=(x+2)2+41y2上求到点(3,0,-1)的最近距离

(1)建模

通过读题,我们发现最近距离题目中没给出,我们需要自己写,此外在抛物面 z = ( x + 2 ) 2 + 1 4 y 2 z=(x+2)^2 + \frac{1}{4}y^2 z=(x+2)2+41y2上这是一个约束条件所以建模如下:

目标函数

距离 d = f ( x , y , z ) = ( x − 3 ) 2 + ( y − 0 ) 2 + ( z + 1 ) 2 d = f(x,y,z) = \sqrt{(x-3)^2 + (y-0)^2 + (z+1)^2} d=f(x,y,z)=(x3)2+(y0)2+(z+1)2

约束条件

g 1 : z = ( x + 2 ) 2 + 1 4 y 2 g_1:z=(x+2)^2 + \frac{1}{4}y^2 g1:z=(x+2)2+41y2

这里需要转换成一边等于0的形式:

g 1 : ( x + 2 ) 2 + 1 4 y 2 − z = 0 g_1:(x+2)^2 + \frac{1}{4}y^2 - z =0 g1:(x+2)2+41y2z=0

(2)引入拉格朗日乘子ʎ_1,构建新函数 F ( x , y , z , ʎ 1 ) F(x,y,z,ʎ_1) F(x,y,z,ʎ1)

F ( x , y , z , ʎ 1 ) = f ( x , y , z ) + ʎ 1 g 1 F(x,y,z,ʎ_1) = f(x,y,z) + ʎ_1g_1 F(x,y,z,ʎ1)=f(x,y,z)+ʎ1g1

= ( x − 3 ) 2 + ( y − 0 ) 2 + ( z + 1 ) 2 + ʎ 1 [ ( x + 2 ) 2 + 1 4 y 2 − z ] \sqrt{(x-3)^2 + (y-0)^2 + (z+1)^2} + ʎ_1[(x+2)^2 + \frac{1}{4}y^2 - z] (x3)2+(y0)2+(z+1)2 +ʎ1[(x+2)2+41y2z]

(3)求偏导

我们发现这里有根号求导不是很简单所以我们可以换个方法,求最小的距离和求最小距离的平方本质上都可以得出解,所以我们就可以将F变一下再求偏导:
F ′ = ( x − 3 ) 2 + ( y − 0 ) 2 + ( z + 1 ) 2 + ʎ 1 [ ( x + 2 ) 2 + 1 4 y 2 − z ] F' = (x-3)^2 + (y-0)^2 + (z+1)^2 + ʎ_1[(x+2)^2 + \frac{1}{4}y^2 - z] F=(x3)2+(y0)2+(z+1)2+ʎ1[(x+2)2+41y2z]

{ ə F ə x = 6 x + 3 ʎ 1 x + 12 ʎ 2 x = 0 ə F ə y = 2 y + ʎ 1 2 y = 0 ə F ə z = 2 ( z + 1 ) − ʎ 1 = 0 ə F ə ʎ 1 = ( x + 2 ) 2 + 1 4 y 2 − z = 0 \begin{cases} \frac{əF}{əx} = 6x +3ʎ_1x + 12ʎ_2x = 0\\ \frac{əF}{əy} = 2y + \frac{ʎ_1}{2}y = 0\\ \frac{əF}{əz} = 2(z+1) - ʎ_1 = 0\\ \frac{əF}{əʎ_1} = (x+2)^2 + \frac{1}{4}y^2 - z = 0 \end{cases} əxəF=6x+3ʎ1x+12ʎ2x=0əyəF=2y+2ʎ1y=0əzəF=2(z+1)ʎ1=0əʎ1əF=(x+2)2+41y2z=0

(4)求解

有唯一解x = -1,y =0;z = 1,ʎ_1=4

说明:拉格朗日乘数法只适用于强约束条件,也就是约束条件是=的情况,而弱约束条件<=或者>=则可以使用KKT定理

5.求极值

✨海森(Hessian)矩阵

对于n元 f ( x 1 , x 2 . . . x n ) f(x_1,x_2...x_n) f(x1,x2...xn)在点 M 0 ( a 1 , a 2 . . . a n ) M_0(a_1,a_2...a_n) M0(a1,a2...an)的领域内有二阶连续偏导,若 ə F ə x i ∣ M 0 ( a 1 , a 2 . . . a n ) = 0 \frac{əF}{əx_i}|_{M_0(a_1,a_2...a_n)} = 0 əxiəFM0(a1,a2...an)=0
矩阵 A M 0 = [ ə 2 F ə x 1 2 ə 2 F ə x 1 ə x 2 ⋯ ə 2 F ə x 1 ə x n ə 2 F ə x 2 ə x 1 ə 2 F ə x 2 ə x 2 ⋯ ə 2 F ə x 2 ə x n ⋮ ⋮ ⋱ ⋮ ə 2 F ə x n ə x 1 ə 2 F ə x n ə x 2 ⋯ ə 2 F ə x n ə x n ] ∣ M 0 ( a 1 , a 2 . . . a n ) A_{M_0}=\begin{bmatrix} {\frac{ə^2F}{əx_1^2}}&{\frac{ə^2F}{əx_1əx_2}}&{\cdots}& {\frac{ə^2F}{əx_1əx_n}}\\ {\frac{ə^2F}{əx_2əx_1}}&{\frac{ə^2F}{əx_2əx_2}}&{\cdots}& {\frac{ə^2F}{əx_2əx_n}}\\ {\vdots}&{\vdots}&{\ddots}&{\vdots}\\ {\frac{ə^2F}{əx_nəx_1}}&{\frac{ə^2F}{əx_nəx_2}}&{\cdots}& {\frac{ə^2F}{əx_nəx_n}} \end{bmatrix}|M_0(a_1,a_2...a_n) AM0= əx12ə2Fəx2əx1ə2Fəxnəx1ə2Fəx1əx2ə2Fəx2əx2ə2Fəxnəx2ə2Fəx1əxnə2Fəx2əxnə2Fəxnəxnə2F M0(a1,a2...an)

并将点 M 0 M_0 M0代入该矩阵中

ə 2 F ə x n ə x 1 \frac{ə^2F}{əx_nəx_1} əxnəx1ə2F表示F先对 x n x_n xn求偏导,然后再对 x 1 x_1 x1求偏导

如果矩阵 A M 0 A_{M_0} AM0是正定的,则F在 M 0 M_0 M0处取得极小值.
如果矩阵 A M 0 A_{M_0} AM0是负定的,则F在 M 0 M_0 M0处取得极大值.
如果矩阵 A M 0 A_{M_0} AM0都不是,则 M 0 M_0 M0不是极值点.
如果矩阵 A M 0 A_{M_0} AM0是半正(负)定,则 M 0 M_0 M0是可疑点(该法失效,另寻他法).

这里了解一下就行:正定矩阵是指一个矩阵的所有特征值都为正数的方阵。换句话说,对于一个n阶方阵A,如果所有特征值λi都满足λi > 0,则A是正定矩阵。
更具体地说,对于一个n阶实对称矩阵A,如果对于任意非零向量x,都有x^T * A * x > 0,则A是正定矩阵。在这种情况下,A的所有特征值都是正数。
正定矩阵具有很多重要的性质和应用。例如,在优化问题中,正定矩阵可以保证目标函数的二次型部分是凸函数,从而保证最优解的存在性和唯一性。在数值计算中,正定矩阵也可以用于解线性方程组和最小二乘问题,提高计算的稳定性和效率。

解题方法

对于n元 f ( x 1 , x 2 . . . x n ) f(x_1,x_2...x_n) f(x1,x2...xn),直接求每一个的偏导然后得出若干个点,对于每个点求其海森矩阵,进行判断

例题

f ( x , y ) = 2 x 2 + 6 x y + y 2 f(x,y) = 2x^2 + 6xy +y^2 f(x,y)=2x2+6xy+y2 在自然定义域内,求极值点
①求偏导
{ ə F ə x = 4 x + 6 y ə F ə y = 2 y + 6 x \begin{cases} \frac{əF}{əx} = 4x+6y\\ \frac{əF}{əy} = 2y+6x \end{cases} {əxəF=4x+6yəyəF=2y+6x
②令偏导为0
{ 4 x + 6 y = 0 2 y + 6 x = 0 \begin{cases} 4x+6y = 0\\ 2y+6x=0 \end{cases} {4x+6y=02y+6x=0
求出点M(0,0)
③求二次偏导得出海森矩阵

{ ə 2 F ə x 2 = 4 ə 2 F ə x ə y = 6 ə 2 F ə y ə x = 6 ə 2 F ə y 2 = 2 \begin{cases} \frac{ə^2F}{əx^2} = 4\\ \frac{ə^2F}{əxəy} = 6\\ \frac{ə^2F}{əyəx} = 6\\ \frac{ə^2F}{əy^2} = 2 \end{cases} əx2ə2F=4əxəyə2F=6əyəxə2F=6əy2ə2F=2

A m = [ 4 6 6 2 ] A_m= \begin{bmatrix} {4}&{6}\\ {6}&{2} \end{bmatrix} Am=[4662]
④判断是否为极值点

矩阵 A m A_m Am是正定矩阵所以在 M 0 M_0 M0处取得极小值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1711907.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CISCN --EzHeap

当时有点着急了&#xff0c;这题没写出来&#xff0c;结束后在ctfshow上做了一下。 使用的方法是environ泄露栈地址&#xff0c;然后在栈上构造orw的rop链。 以下是过程&#xff1a; 只能orw。 堆体开沙盒模式会在heap和bin一开始构造很多垃圾堆。所以分配和free的时候要注意…

1806 jsp防疫物资销售管理系统 Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 jsp 防疫物资销售管理系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助采用了java设计&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统采用web模式&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.…

Ps:消失点滤镜 - 透视平面和网格

Ps菜单&#xff1a;滤镜/消失点 Filter/Vanishing Point 快捷键&#xff1a;Ctrl Alt V “消失点”滤镜中的透视平面 Plane和网格 Grid用于在编辑图像时保持正确的透视效果。 只有定义了与图像透视对齐的矩形平面&#xff0c;才能在消失点中进行编辑。平面的精确度确定了能否…

[自动驾驶技术]-5 Tesla自动驾驶方案之算法(AI Day 2021)

有朋友问我&#xff0c;如何有效学习一个新技术。笔者这么多年的经验是&#xff1a;1&#xff09;了解国内外产业应用和标准法规现状&#xff0c;先建立宏观知识图谱及技术系统框架&#xff1b;2&#xff09;根据系统框架逐块进行深入研究&#xff08;横向、纵向&#xff09;&a…

【LLM第7篇】transformer跟bert、gpt、大模型的联系

上一篇讲了transformer的原理&#xff0c;接下来&#xff0c;看看它的衍生物们。 Transformer基本架构 Transformer模型主要由两部分组成&#xff1a;编码器&#xff08;Encoder&#xff09;和解码器&#xff08;Decoder&#xff09;。编码器负责处理输入序列&#xff0c;将其…

正邦科技(day2)

自动校准 问题&#xff1a;电量不准都可以直接去校准 校准方式&#xff1a;可程式变频电压 问题分析&#xff1a;他是通过软件去自动自动校准的&#xff0c;flash 清空的时候有缓存没有清空&#xff0c;或者互感器没有读取到问题 互感器&#xff1a;电流互感器的作用包括电流测…

2024年5月份架构师考试真题完整版

截至2024-5-28 19:24:14已全部收录完成 共75到选择题&#xff0c;5道案例题&#xff0c;4道论文题。题目顺序不分先后。 全网最全的2024年5月份架构师考试真题回忆版&#xff0c;包含答案和解析。 群友 疯狂程序员 花落无声 半夏 鲁迅-三战老兵(预备役) 本次必成 锦鲤附体 2024…

LabVIEW车轮动平衡检测系统

LabVIEW车轮动平衡检测系统 随着汽车行业的快速发展&#xff0c;车轮动平衡问题对乘坐舒适性、操控稳定性及安全性的影响日益凸显&#xff0c;成为了提高汽车性能的一个关键环节。传统的检测系统因精度低、成本高、操作复杂等问题&#xff0c;难以满足现代汽车行业的需求。开发…

100个 Unity小游戏系列四 -Unity 抽奖游戏专题二 水果机游戏

一、演示效果 二、知识点 2.1 布局 private void CreateItems(){for (int i 0; i < rewardDatas.Length; i){var reward_data rewardDatas[i];GameObject fruitOjb;if (i < itemRoot.childCount){fruitOjb itemRoot.GetChild(i).gameObject;}else{fruitOjb Instant…

C++数据结构之:链List

摘要&#xff1a; it人员无论是使用哪种高级语言开发东东&#xff0c;想要更高效有层次的开发程序的话都躲不开三件套&#xff1a;数据结构&#xff0c;算法和设计模式。数据结构是相互之间存在一种或多种特定关系的数据元素的集合&#xff0c;即带“结构”的数据元素的集合&am…

如何恢复已删除/丢失或未保存的 PDF 文件?

许多用户曾因某些问题删除或丢失 PDF 文件。此外&#xff0c;一些用户在关闭应用程序时未保存 PDF 文件&#xff0c;从而丢失 PDF 文件。您可以尝试一些解决方案来恢复已删除的 PDF 文件、恢复未保存的 PDF 文件&#xff0c;以及在任何其他数据丢失情况下挽救丢失的 PDF 文件。…

汇编原理(四)[BX]和loop指令

loop&#xff1a;循环 误区&#xff1a;在编译器里写代码和在debug里写代码是不一样的&#xff0c;此时&#xff0c;对于编译器来说&#xff0c;就需要用到[bx] [bx]: [bx]同样表示一个内存单元&#xff0c;他的偏移地址在bx中&#xff0c;比如下面的指令 move bx, 0 move ax,…

学习笔记——数据通信基础——数据通信网络(基本概念)

数据通信网络基本概念 网络通信&#xff1a;是指终端设备之间通过计算机网络进行的通信。 数据通信网络(Data Communication Network)&#xff1a;由 路由器、交换机、防火墙、无线控制器、无线接入点&#xff0c;以及个人电脑、网络打印机&#xff0c;服务器等设备构成的通信…

Spring Boot集成freemaker快速入门demo

1.什么是freemaker&#xff1f; FreeMarker 是一款模板引擎&#xff1a;即一种基于模板和要改变的数据&#xff0c;并用来生成输出文本(HTML网页&#xff0c;电子邮件&#xff0c;配置文件&#xff0c;源代码等)的通用工具。 它不是面向最终用户的&#xff0c;而是一个Java类库…

【学习心得】PyTorch的知识要点复习(持续更新)

PyTorch知识要点复习&#xff0c;目的是为了巩固PyTorch基础、快速回顾、深化理解PyTorch框架。这篇文章会持续更新。 一、本文的一些说明 知识点梳理&#xff1a;我将PyTorch的核心概念和高级技巧进行了系统化的整理&#xff0c;从基础的张量操作到复杂的模型构建与训练。这样…

HR人才测评,想象力维度分析(大五人格测试)

想象力维度&#xff08;高得分者&#xff09;性格特征 开放性人格的人通常富有想象力。想象力是一种可贵的天赋&#xff0c;通常在孩童时期人们都会充满想象力&#xff0c;但是随着渐渐长大&#xff0c;我们的想象力也会被时光的棱角磨平。 但开放性人格的人并非如此&#x…

Windows下PostgreSQL数据库的备份与恢复

文章目录 一、备份1.找到PostgreSQL的安装目录下的"bin"目录2.在windows的命令窗口里&#xff0c;使用pg_dump进行备份1.打开命令窗口2.使用pg_dump将数据库备份下来 二、恢复1.找到PostgreSQL的安装目录下的"bin"目录2.在windows的命令窗口里&#xff0c;…

2007NOIP普及组真题 4. Hanoi双塔问题

线上OJ&#xff1a; 【07NOIP普及组】Hanoi双塔问题 题解分析 1、本题考的其实不是Hanoi塔&#xff0c;而是瞪眼法&#xff08;数学推导&#xff09;和高精度。 2、本题不需要输出移动的顺序&#xff0c;只是输出移动的次数即可。 核心思想&#xff1a; 1、从上述图中&#x…

.NET 某和OA办公系统全局绕过漏洞分析

转自先知社区 作者&#xff1a;dot.Net安全矩阵 原文链接&#xff1a;.NET 某和OA办公系统全局绕过漏洞分析 - 先知社区 0x01 前言 某和OA协同办公管理系统C6软件共有20多个应用模块&#xff0c;160多个应用子模块&#xff0c;从功能型的协同办公平台上升到管理型协同管理平…

Next-Admin,一款基于Nextjs开发的开箱即用的中后台管理系统(全剧终)

hello&#xff0c;大家好&#xff0c;我是徐小夕。之前和大家分享了很多可视化&#xff0c;零代码和前端工程化的最佳实践&#xff0c;今天继续分享一下最近开源的 Next-Admin 项目的最新更新。 这次更新是1.0版本最后一次更新&#xff0c;也根据用户反馈的问题做了一些优化&am…