凸优化问题求解

这里写目录标题

  • 1. 线性规划基本定理
  • 2.单纯形法
    • 2.1 转轴运算
  • 3. 内点法
    • 3.1 线性规划的内点法

1. 线性规划基本定理

首先我们指出,线性规划均可等价地化成如下标准形式 { min ⁡ c T x , s . t A x = b , x ⪰ 0 , \begin{align}\begin{cases}\min~c^Tx,\\\mathrm{s.t}~Ax=b,\\x\succeq0,&\end{cases}\end{align} min cTx,s.t Ax=b,x0,其中, A = [ a 1 , ⋯ , a n ] ∈ R m × n , b ∈ R m , c ∈ R n A=[a_1,\cdots,a_n]\in\mathbb{R}^{m\times n},b\in\mathbb{R}^m,c\in\mathbb{R}^n A=[a1,,an]Rm×n,bRm,cRn不妨恒假定矩阵 A A A 是行满秩的,即 r a n k ( A ) = m \mathbf{rank}(A)=m rank(A)=m(否则根据线性代数的理论,可以找到 r a n k ( A ) \mathbf{rank}(A) rank(A) 行方程来替换原方程,同时为了叙述简便,分别称矩阵 A A A 和 向量 b b b 为(1)的系数矩阵和右端向量.

因为线性规划的可行集是一个多面体,并且目标函数是线性的,从几何上直观地看,线性函数在多面体上的极小点若存在,则必然在多面体的顶点上取得.对于标准形式的线性规划问题,其最小值点必在坐标轴上达到,于是这就需要研究 A x = b Ax = b Ax=b 的所谓基础解的性质.

对标准形式的线性规划问题(7.1.1), 设方程组 A x = b Ax=b Ax=b 有解. 设 b ∈ s p a n ( A ) , { a j } j ∈ J b\in\mathbf{span}(A),\{a_j\}_{j\in J} bspan(A),{aj}jJ A A A的列向量的一个极大线性无关组,其中 J ⊂ { 1 , . . . , n } , ∣ J ∣ = m ( ∣ J ∣ J\subset \{ 1, ..., n\} , |J|= m( |J| J{1,...,n},J=m(J 表示集合 J J J 所含元素个数).那么 b b b 必可表示为 { a j } j ∈ J \{a_j\}_{j\in J} {aj}jJ 的线性组合.

定义 1.1 (线性方程组的基础解) 设 A ∈ R m × n , b ∈ R m , x = ( x 1 , . . . , x n ) T A\in\mathbb{R}^{m\times n},\:b\in\mathbb{R}^m,\:x=(x_1,...,x_n)^T ARm×n,bRm,x=(x1,...,xn)T 是线性方程组 A x = b Ax=b Ax=b 的一个解.如果存在 J ⊂ { 1 , ⋯ , n } , ∣ J ∣ = r a n k ( A ) J\subset\{1,\cdots,n\},\quad|J|=\mathbf{rank}(A) J{1,,n},J=rank(A),使得 x j = 0 , ∀ j ∉ J ; { a j ∣ j ∈ J } 线性无关 , x_j=0,\quad\forall j\not\in J;\quad\{a_j|j\in J\}\text{线性无关}, xj=0,jJ;{ajjJ}线性无关,则称 x x x 为一个基础解, x x x 的分量 { x j ∣ j ∈ J } \{x_j|j\in J\} {xjjJ} 称为相应的基变量,并称 { x j ∣ j ∉ J } \{x_j|j\not\in J\} {xjjJ} 为非基变量.若 { x j ∣ j ∈ J } \{x_j|j\in J\} {xjjJ} 含有零元素,则称 x x x 是一个退化的基础解.

显然,若 A x = b Ax=b Ax=b 有解,则矩阵 A A A 的列向量 { a 1 , . . . , a n } \{a_1,...,a_n\} {a1,...,an} 的每一个极大线性无关组对应于一个基础解,由于 { a 1 , . . . , a n } \{a_1,...,a_n\} {a1,...,an} 的极大线性无关组未必唯一,所以 A x = b Ax=b Ax=b 的基础解也不一定是唯一的.

引理 1.1 A = [ a 1 , . . . , a n ] ∈ R m × n , b ∈ R m , x ∈ R n A=[a_1,...,a_n]\in\mathbb{R}^{m\times n},\:b\in\mathbb{R}^m,\:x\in\mathbb{R}^n A=[a1,...,an]Rm×n,bRm,xRn A x = b Ax=b Ax=b 的一个解,那么 x x x 是基础解当且仅当 { a j ∣ x j ≠ 0 } \{a_j|x_j\neq0\} {ajxj=0} 线性无关.

. 设 x x x 是基础解,根据线性方程组基础解的定义,存在 J ⊂ { 1 , ⋯ , n } , ∣ J ∣ = r a n k ( A ) J\subset\{1,\cdots,n\},\quad|J|=\mathbf{rank}(A) J{1,,n},J=rank(A),使得 x j = 0 , ∀ j ∉ J ; { a j ∣ j ∈ J } 线性无关 , x_j=0,\quad\forall j\not\in J;\quad\{a_j|j\in J\}\text{线性无关}, xj=0,jJ;{ajjJ}线性无关,于是由集合的性质可以得到, { a j ∣ x j ≠ 0 } ⊂ { a j ∣ j ∈ J } \{a_j|x_j\neq0\}\subset\{a_j|j\in J\} {ajxj=0}{ajjJ}, 所以 { a j ∣ x j ≠ 0 } \{a_j|x_j\neq0\} {ajxj=0} 是极大线性无关组的子集,故线性无关.

反之,设 A x = b Ax=b Ax=b { a j ∣ x j ≠ 0 } \{a_j|x_j\neq0\} {ajxj=0} 线性无关.不妨设
{ x j ≠ 0 j = 1 , ⋯ , k ; x j = 0 j = k + 1 , ⋯ , n . \begin{cases}x_j\neq0&j=1,\cdots,k;\\x_j=0&j=k+1,\cdots,n.\end{cases} {xj=0xj=0j=1,,k;j=k+1,,n.因为 a 1 , . . . , a k a_1,...,a_k a1,...,ak 线性无关,所以 k ≤ m = r a n k ( A ) k\leq m= \mathbf{rank}(A) km=rank(A). 当 k < m k<m k<m 时从 a k + 1 , ⋯ , a n a_{k+1},\cdots,a_n ak+1,,an 中挑选 m − k m-k mk 个向量,不妨设为 a k + 1 , ⋯ , a m a_{k+1},\cdots,a_m ak+1,,am,使得 a 1 , ⋯ , a m a_1,\cdots,a_m a1,,am 线性无关. 由于 x m + 1 = . . . = x n = 0 x_{m+1}=...=x_n= 0 xm+1=...=xn=0,所以 x x x A x = b Ax=b Ax=b 的一个基础解.

n n n 维线性方程组 A x = b Ax=b Ax=b 的解 x x x的全体构成 R n \mathbb{R} ^n Rn 中的一个仿射集. 其基础解是落在某个 m m m 维子空间的解,它使得 { a j ∣ x j ≠ 0 } \{a_j|x_j\neq0\} {ajxj=0} 线性无关.

定义 1.2 (基础可行解和基础最优解) 对于线性规划(1)即 { min ⁡ c T x , s . t A x = b , x ⪰ 0 , \begin{aligned}\begin{cases}\min~c^Tx,\\\mathrm{s.t}~Ax=b,\\x\succeq0,&\end{cases}\end{aligned} min cTx,s.t Ax=b,x0, x x x A x = b Ax=b Ax=b 的一个基础解,

(1) 若 x x x 还是(1)的一个可行点,即 x ⪰ 0 x\succeq0 x0, 则称之为(1)的一个基础可行解;

(2) 若 x x x 还是(1)的一个最优解,则称之为(1)的一个基础最优解.

对于线性规划(7.1.1),有

命题 1.2 (线性规划基本定理) 对于线性规划(1)有

(1) 若存在可行点,则必存在基础可行解;

(2) 若存在最优解,则存在基础最优解

.设 A = [ a 1 , ⋯ , a n ] ∈ R m × n , b ∈ R m , x A=[a_1,\cdots,a_n]\in\mathbb{R}^{m\times n},b\in\mathbb{R}^m,x A=[a1,,an]Rm×n,bRm,x 是(1)的一个可行点.若 { a j ∣ x j > 0 } \{a_j|x_j>0\} {ajxj>0} 线性相关,不妨设 x x x 的前 k k k 个分量非零: x j > 0 , j = 1 , ⋯ , k ; x j = 0 , j = k + 1 , ⋯ , n . \begin{aligned}x_j>0,&&j=1,\cdots,k;&&x_j=0,&&j=k+1,\cdots,n.\end{aligned} xj>0,j=1,,k;xj=0,j=k+1,,n.由于 { a j ∣ x j > 0 } \{a_j|x_j>0\} {ajxj>0} 线性相关,于是存在 0 ≠ y = ( y 1 , ⋯ , y k , 0 , ⋯ , 0 ) T ∈ R n 0\neq y=(y_1,\cdots,y_k,0,\cdots,0)^T\in\mathbb{R}^n 0=y=(y1,,yk,0,,0)TRn, 使得 A y = y 1 a 1 + ⋯ + y k a k = 0. Ay=y_1a_1+\cdots+y_ka_k=0. Ay=y1a1++ykak=0.易见,当 ϵ > 0 \epsilon>0 ϵ>0 充分小时,有
\quad (a) x j ± ϵ y j > 0 , j = 1 , ⋯ , k x_j\pm \epsilon y_j> 0, j= 1, \cdots , k xj±ϵyj>0,j=1,,k.所以 x ± ϵ y x\pm\epsilon y x±ϵy 都是可行点;
\quad (b) 若 x x x 是最优解,则 c T x ≤ c T ( x ± ϵ y ) c^Tx\leq c^T(x\pm\epsilon y) cTxcT(x±ϵy),即 c T y = 0 c^Ty=0 cTy=0. 从而 c T ( x ± ϵ y ) = c T x . c^T(x\pm\epsilon y)=c^Tx. cT(x±ϵy)=cTx.

不妨设 y 1 , . . . , y k y_1,...,y_k y1,...,yk 中至少有一个为正的项. 下面我们用用逐步逼近的思想,来让可行解 x x x 其中一个分量变为零后但仍为可行解.

ϵ \epsilon ϵ 逐步增大,直到 { x j − ϵ y j ∣ j = 1 , . . . , k } \{x_j-\epsilon y_j|j=1,...,k\} {xjϵyjj=1,...,k} 中至少有一项为 0 而其余各项非负. 因为 ϵ \epsilon ϵ 充分小,于是 x ~ : = x − ϵ y \tilde{x}:=x-\epsilon y x~:=xϵy 仍是一个可行点,且它比 x x x 至少多出一个为零的分量.

{ a j ∣ x ~ j > 0 } \{a_j|\tilde{x}_j>0\} {ajx~j>0} 仍线性相关,不断重复上述逐步逼近的操作,那么有限次后便得到可行点 x ~ \tilde{x} x~, 使得 { a j ∣ x ~ j > 0 } \{a_j|\tilde{x}_j>0\} {ajx~j>0} 线性无关(因为线性方程组 A x = b Ax=b Ax=b的 系数矩阵 A A A 的秩不为0).因为 0 ⪯ x 0\preceq x 0x,所以 { a j ∣ x ~ j > 0 } = { a j ∣ x ~ j ≠ 0 } \{a_j|\tilde{x}_j>0\}=\{a_j|\tilde{x}_j\neq0\} {ajx~j>0}={ajx~j=0}, 于是由引理 1.1可知, x ~ \tilde{x} x~ 是一个基础可行解. (1) 获证.

命题 1.2是非常重要的,它能够说明在整个可行集中求解线性规划(1)的问题可以归结为在基础可行集中求解.而 A x = b Ax=b Ax=b 的基础解个数就是 { a 1 , . . . , a n } \{a_1,...,a_n\} {a1,...,an} 的极大线性无关组的个数,且最大个数为 ( n m ) \binom{n}{m} (mn).

定义 1.3 (极点) 设 x ∈ S ⊂ R n x\in S\subset\mathbb{R}^n xSRn. 如果不存在互异的 x 1 , x 2 ∈ S x_1,x_2\in S x1,x2S 以及 0 < θ < 1 0<\theta<1 0<θ<1, 使得 x = θ x 1 + ( 1 − θ ) x 2 x=\theta x_1+(1-\theta)x_2 x=θx1+(1θ)x2,即线段 x 1 x 2 x_1x_2 x1x2之间任意一点都不属于集合 S S S ,则称 x x x S S S 的一个极点.

命题 1.3 (基础可行解的几何特征) 设 A ∈ R m × n , b ∈ R m A\in\mathbb{R}^{m\times n},\quad b\in\mathbb{R}^m ARm×n,bRm,记 D : = { x ∈ R n ∣ A x = b , x ⪰ 0 } \mathcal{D}:=\{x\in\mathbb{R}^n|Ax=b,\:x\succeq0\} D:={xRnAx=b,x0}.那么, x x x 是一个基础可行解当且仅当它是 D D D 的一个极点.

.设 x x x 不是 D \mathcal{D} D 的一个极点,不妨设 x ∈ D ( x\in\mathcal{D}( xD(否则已经不是基础可行解). 因为 x x x是基础可行解且 x x x 不是极点,于是存在 y , z ∈ D , y ≠ z y,z\in\mathcal{D},\:y\neq z y,zD,y=z,以及 0 < θ < 1 0<\theta<1 0<θ<1, 使得 x = θ y + ( 1 − θ ) z x=\theta y+(1-\theta)z x=θy+(1θ)z.不妨设设 { i ∣ x i > 0 } = { 1 , . . . , k } . \{i|x_i>0\}=\{1,...,k\}. {ixi>0}={1,...,k}. 由于 x , y , z x,y,z x,y,z 的所有分量都是非负的,且由于 x = θ y + ( 1 − θ ) z x=\theta y+(1-\theta)z x=θy+(1θ)z,所以 y , z y,z y,z 的后 n − k n-k nk 个分量也是 0. 于是 ∑ i = 1 k ( y i − z i ) a i = ∑ i = 1 k y i a i − ∑ i = 1 k z i a i = A y − A z = b − b = 0. \sum_{i=1}^k(y_i-z_i)a_i=\sum_{i=1}^ky_ia_i-\sum_{i=1}^kz_ia_i=Ay-Az=b-b=0. i=1k(yizi)ai=i=1kyiaii=1kziai=AyAz=bb=0.所以 a 1 , . . . , a k a_1,...,a_k a1,...,ak 线性相关. 由 引理 1.1可知, x x x 不是一个基础可行解,矛盾

反之,设 x x x 不是一个基础可行解但 x x x是极点,不妨设 x ∈ D ( x\in\mathcal{D}( xD(否则它已经不是 D \mathcal{D} D 的极点). 由于 x x x 不是基础可行解,则 x x x 也不是 A x = b Ax=b Ax=b 的基础解. 不妨设 { i ∣ x i > 0 } = { 1 , . . . , k } \{i|x_i>0\}=\{1,...,k\} {ixi>0}={1,...,k}, 那么 a 1 , . . . , a k a_1,...,a_k a1,...,ak 线性相关. 于是存在 0 ≠ y = ( y 1 , ⋯ , y k , 0 , ⋯ , 0 ) T 0\neq y=(y_1,\cdots,y_k,0,\cdots,0)^T 0=y=(y1,,yk,0,,0)T, 使得 A y = 0 Ay=0 Ay=0. 易见当 ϵ \epsilon ϵ 充分小时,有 x ± ϵ y ∈ D , x = 1 2 [ ( x + ϵ y ) + ( x − ϵ y ) ] . x\pm\epsilon y\in\mathcal{D},\quad x=\frac{1}{2}\big[(x+\epsilon y)+(x-\epsilon y)\big]. x±ϵyD,x=21[(x+ϵy)+(xϵy)].所以 x x x 不是 D \mathcal D D 的极点,矛盾.

2.单纯形法

单纯形法的基本思想是从线性规划的一个基础可行解出发,寻找另一个基础可行解,并在此过程中使目标函数不断下降,直至达到基础最优解.

2.1 转轴运算

转轴运算是单纯形算法的基本运算单元,现考虑如下标准形式的线性规划 { min ⁡ f ( x ) = c T x + d s . t A x = b , x ⪰ 0 , \begin{align}\begin{cases}&\min f(x)=c^Tx+d\\ &\mathrm{s.t}Ax=b,\\&x\succeq0,&\end{cases}\end{align} minf(x)=cTx+ds.tAx=b,x0, 其中  A ∈ R m × n , b ∈ R m , c ∈ R n . 下面先介绍单纯形表和三种基本变换 . \text{其中 }A\in\mathbb{R}^{m\times n},\mathrm{~}b\in\mathbb{R}^m,\mathrm{~}c\in\mathbb{R}^n.\text{ 下面先介绍单纯形表和三种基本变换}. 其中 ARm×n, bRm, cRn. 下面先介绍单纯形表和三种基本变换.构造如下所示的图表: [ x T b A b c T − d ] = [ x 1 ⋯ x p ⋯ x q ⋯ x n b a 11 ⋯ a 1 p ⋯ a 1 q ⋯ a 1 n b 1 ⋮ ⋮ ⋮ ⋮ ⋮ a m 1 ⋯ a m p ⋯ a m q ⋯ a m n b m c 1 ⋯ c p ⋯ c q ⋯ c n − d ] , \begin{align}\left.\left[\begin{array}{c|c}x^T&b\\\hline A&b\\\hline c^T&-d\end{array}\right.\right]=\left[\begin{array}{cccccc|c}x_1&\cdots&x_p&\cdots&x_q&\cdots&x_n&b\\\hline a_{11}&\cdots&a_{1p}&\cdots&a_{1q}&\cdots&a_{1n}&b_1\\\vdots&&\vdots&&\vdots&&\vdots&\vdots\\a_{m1}&\cdots&a_{mp}&\cdots&a_{mq}&\cdots&a_{mn}&b_m\\\hline c_1&\cdots&c_p&\cdots&c_q&\cdots&c_n&-d\end{array}\right],\end{align} xTAcTbbd = x1a11am1c1xpa1pampcpxqa1qamqcqxna1namncnbb1bmd ,并且称之为线性规划(2)的单纯形表.其中第一行且并非数值或变量,称之为标记行,其作用是在后续列交换时过程中标记对应变量的位置.最后一行是线性规划(1)的目标函数的系数,称之为目标行.而除标记行和目标行以外的部分是矩阵 [ A , b ] [A, b] [A,b],为叙述简便,对 1 ≤ i ≤ m 1 ≤ i ≤ m 1im,仍称矩阵 [ A , b [A, b [A,b] 的第 i i i 行为单纯形表的第 i i i 行.

(2.1.1) 变量置换, 设 1 ≤ p < q ≤ n 1 ≤ p<q ≤ n 1p<qn 将单纯性表(3)的第 p p p 列与第 q q q 列进行交换,可以得到如下新的单纯性表 [ x ′ T b A ′ b ′ c ′ T − d ′ ] = [ x 1 ⋯ x q ⋯ x p ⋯ x n b a 11 ⋯ a 1 q ⋯ a 1 p ⋯ a 1 n b 1 ⋮ ⋮ ⋮ ⋮ ⋮ a m 1 ⋯ a m q ⋯ a m p ⋯ a m n b m c 1 ⋯ c q ⋯ c p ⋯ c n − d ] . \left.\left[\begin{array}{c|c}x'^T&b\\\hline A'&b'\\\hline c'^T&-d'\end{array}\right.\right]=\left[\begin{array}{cccccc|c}x_1&\cdots&x_q&\cdots&x_p&\cdots&x_n&b\\\hline a_{11}&\cdots&a_{1q}&\cdots&a_{1p}&\cdots&a_{1n}&b_1\\\vdots&&\vdots&&\vdots&&\vdots&\vdots\\a_{m1}&\cdots&a_{mq}&\cdots&a_{mp}&\cdots&a_{mn}&b_m\\\hline c_1&\cdots&c_q&\cdots&c_p&\cdots&c_n&-d\end{array}\right]. xTAcTbbd = x1a11am1c1xqa1qamqcqxpa1pampcpxna1namncnbb1bmd .根据线性代数的内容,有 x ′ = Q x , A ′ = A Q T , b ′ = b , c ′ = Q c , d ′ = d , x'=Qx,\quad A'=AQ^T,\quad b'=b,\quad c'=Qc,\quad d'=d, x=Qx,A=AQT,b=b,c=Qc,d=d,其中 Q Q Q 是交换第 p p p 行和第 q q q 行的 n n n 阶置换矩阵, x x x n n n 维列向量,即 x = ( x 1 , x 2 , ⋯ , x n ) T x=(x_1,x_2,\cdots,x_n)^T x=(x1,x2,,xn)T,由此可得 A x = b ⟺ A ′ x ′ = b ′ . Ax=b\iff A^{\prime}x^{\prime}=b^{\prime}. Ax=bAx=b.

(2.1.2) 行初等变换, 将单纯性表(3)除标记行和目标行以外的各行进行矩阵的行初等
变换,得到新的单纯形表X.显然标记行和目标行不会改变-,仅仅是将 [ A , b ] [A, b] [A,b] 变成了 [ A ′ , b ′ ] X [A′, b′]X [A,b]X 显然 A x = b Ax = b Ax=b 同解于 A ′ x = b ′ A′x = b′ Ax=b

(2.1.3) 目标函数变形:设 1 ≤ i ≤ m , λ ∈ R 1\leq i\leq m,\lambda\in\mathbb{R} 1im,λR.将单纯性表(7.2.2)的目标行减去 [ A , b ] [A,b] [A,b] 的第 i i i 行的 λ倍,得到新的目标行 [ c ′ , − d ′ ] [c^{\prime},-d^{\prime}] [c,d]. 记目标函数 f ( x ) : = c T x + d f(x):=c^Tx+d f(x):=cTx+d ,那么,这相当于用 c T x = f ( x ) − d c^Tx=f(x)-d cTx=f(x)d 减去 A x = b Ax=b Ax=b i i i 行的 入倍,得 c ′ T x = f ( x ) − d − λ b i c^{\prime T}x=f(x)-d-\lambda b_i cTx=f(x)dλbi, 即

3. 内点法

3.1 线性规划的内点法

内点法的基本思想

单纯形法从顶点到顶点搜索最优解- 当初始点远离最优解时- 需要很长的搜索代价X 而内
点法在可行域内部进行搜索迭代的算法X 设当前点 x0 是可行集 D 的一个相对内点- 根
据 优化问题笔记 中的引理 1.2.1,设 x ∗ ∈ D x^*\in\mathcal{D} xD,那么 S F D ( x ∗ ) \mathbf{SFD}(x^*) SFD(x) 是一个闭集,且当 x ∗ ∈ r i ( D ) x^*\in\mathbf{ri}(\mathcal{D}) xri(D) 时,有 V P ∩ ∂ B ( 0 , 1 ) ⊂ F D ( x ∗ ) V_{\mathcal{P}}\cap\partial B(0,1)\subset\mathbf{FD}(x^*) VPB(0,1)FD(x),因而 c l ( F D ( x ∗ ) ) ⊂ S F D ( x ∗ ) ⊂ U ( x ∗ ) ∩ ∂ B ( 0 , 1 ) ⊂ V D ∩ ∂ B ( 0 , 1 ) \mathbf{cl}(\mathbf{FD}(x^{*}))\subset\mathbf{SFD}(x^{*})\subset\mathbf{U}(x^{*})\cap\partial B(0,1)\subset V_{\mathcal{D}}\cap\partial B(0,1) cl(FD(x))SFD(x)U(x)B(0,1)VDB(0,1)中四个集合均相等,

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

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

相关文章

从零开始制作一个Douban图像下载器:Wt库的基础知识和操作指南

引言 欢迎来到本文&#xff0c;如果你希望从豆瓣下载海量的高清图像、学习使用现代C web应用程序框架Wt库开发web应用程序&#xff0c;或者了解如何利用代理IP和多线程技术提高爬虫效率和稳定性&#xff0c;那么你来对地方了。在接下来的内容中&#xff0c;我们将为你提供一个…

Taro旧项目埋坑日记

Taro旧项目埋坑日记 unexpected "\" at pos 148

过滤器和监听器及应用

Filter及应用 Filter有什么用?一、Filter处理中文乱码二、监听器&#xff0c;统计网站在线人数1.监听器引入2.统计网站在线人数 三、Filter实现权限拦截 Filter有什么用? Filter:过滤器&#xff0c;可以用来过滤网站的数据。 比如处理中文乱码&#xff0c;每次写servlet&…

docker小白第六天

docker小白第六天 容器数据卷是什么 首先&#xff0c;容器卷有个坑&#xff1a;容器卷需要加入privilegedtrue&#xff0c;如下图所示&#xff0c;是为了解决permission denied的问题。其中“挂载”的意思是相当于一个硬盘插到主机上。使用该命令。是扩大容器的权限解决挂载目…

力扣面试题 16.19. 水域大小(java DFS解法)

Problem: 面试题 16.19. 水域大小 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 该问题可以归纳为一类遍历二维矩阵的题目&#xff0c;此类中的一部分题目可以利用DFS来解决&#xff0c;具体到本题目&#xff08;该题目可以的写法大体不变可参看前面几个题目&#…

华为实训课笔记 2023

华为实训 12/1312/1412/1812/19 12/13 ping 基于ICMP协议&#xff0c;用来进行可达性测试 ping 目的IP地址/设备域名&#xff08;主机名&#xff09; 如果能收到 reply 回复&#xff0c;则表示双方可以正常通信。一次正常的数据通信必须是有去有回。 <Huawei>用户视图&a…

几种常见开关电源电路图

用UC3842做的开关电源的典型电路见图1。过载和短路保护&#xff0c;一般是通过在开关管的源极串一个电阻&#xff08;R4&#xff09;&#xff0c;把电流信号送到3842的第3脚来实现保护。 当电源过载时&#xff0c;3842保护动作&#xff0c;使占空比减小&#xff0c;输出电压降…

旅游服务平台可视化大屏界面,UI设计PS资料

大屏通过实时的数据展示&#xff0c;可及时发现数据的变化和异常&#xff0c;以便及时采取措施。现分享蓝色简约大气旅游服务平台、蓝色渐变科技旅游服务平台可视化界面的Photoshop源文件&#xff0c;供UI设计师们快速获取PSD源文件完成工作。 若需更多 大屏组件&#xff0c;请…

在JavaScript中如何确保构造函数只被new调用

构造函数是一个特殊的函数&#xff0c;用于初始化一个新创建的对象。它是在创建对象时自动调用的。构造函数通常用于为对象的属性赋值&#xff0c;或者执行其他必要的设置。 使用函数名大写字母开头&#xff0c;这是一种命名约定&#xff0c;用于区分构造函数和普通函数。如何…

图纸加密软件哪个好用丨强烈推荐这个CAD图纸加密小技巧

只有身处设计行业的老板&#xff0c;也会设身处地的感受到&#xff0c;图纸加密软件的重要性&#xff01; 因为一个图纸可能就是一单生意&#xff0c;一单生意可能就能决定公司一年的营收。所以&#xff0c;选择适合企业饿图纸加密软件势在必行。 哪个图纸加密软件比较好用呢&…

下载svn client,小乌龟

给兄弟们提供一个下载svn client的软件连接 不好用包退货 https://sourceforge.net/projects/tortoisesvn/ 点击download即可

PyQt6 QFontDialog字体对话框控件

锋哥原创的PyQt6视频教程&#xff1a; 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计50条视频&#xff0c;包括&#xff1a;2024版 PyQt6 Python桌面开发 视频教程(无废话版…

Java 数据结构篇-实现堆的核心方法与堆的应用(实现 TOP-K 问题:最小 k 个数)

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 堆的说明 2.0 堆的成员变量及其构造方法 3.0 实现堆的核心方法 3.1 实现堆的核心方法 - 获取堆顶元素 peek() 3.2 实现堆的核心方法 - 下潜 down(int i) 3.3 实…

嵌入式串口输入详细实例

学习目标 掌握串口初始化流程掌握串口输出单个字符掌握串口输出字符串掌握通过串口printf熟练掌握串口开发流程学习内容 需求 串口循环输出内容到PC机。 串口数据发送 添加Usart功能。 首先,选中Firmware,鼠标右键,点击Manage Project Items 接着,将gd32f4xx_usart.c添…

shell编程-重定向与打印命令详解(超详细)

文章目录 前言一、Shell重定向1. 标准输入重定向2. 标准输出重定向3. 追加重定向4. 标准错误重定向5. 合并输出和错误重定向6. /dev/null文件 二、Shell中的echo命令与printf命令1. echo命令1.1 命令格式1.2 功能描述1.3 常用选项1.4 示例 2. printf命令2.1 命令格式2.2 功能描…

xcode无线真机调试详细图文步骤

步骤一、 步骤二&#xff1a; 步骤三&#xff1a; 配置完到这里&#xff0c;点击真机右键&#xff0c;菜单栏并未出现connect via ip address 选项&#xff0c;也没出现无线连接的小地球图标&#xff0c;别慌&#xff0c;接着进行下一步操作即可。 步骤四&#xff1a; 1.打开…

什么是同源策略?

同源 同源指的是URL有相同的协议、主机名和端口号。 同源策略 同源策略指的是浏览器提供的安全功能&#xff0c;非同源的RUL之间不能进行资源交互 跨域 两个非同源之间要进行资源交互就是跨域。 浏览器对跨域请求的拦截 浏览器是允许跨域请求的&#xff0c;但是请求返回…

Ceph入门到精通-smartctl 查看硬盘参数

smartctl 参数含义 Model Family: Toshiba s... Enterprise Capacity HDD Device Model: TOSHIBA MG08ACss Serial Number: sssssss LU WWN Device Id: 5 ss ss Firmware Version: 4303 User Capacity: 16,000,900,661,248 bytes [16.0 TB] Sector Sizes: 51…

手机端升级ChatGPT失败怎么办?解决方案

昨天一个朋友说他手机端升级失败如下图 其实手机端对IP环境要求更严格&#xff0c;升级失败很正常&#xff0c;解决办法就是使用电脑端就可以了&#xff0c;电脑端对IP环境相对来说没有手机那么严格 不管手机电脑&#xff0c;都要用最纯净的IP才行&#xff0c;如果不行&#xf…