约束优化:PHR-ALM 增广拉格朗日函数法

article/2025/9/19 23:33:52

文章目录

  • 约束优化:PHR-ALM 增广拉格朗日函数法
    • 等式约束非凸优化问题的PHR-ALM
    • 不等式约束非凸优化问题的PHR-ALM
    • 对于一般非凸优化问题的PHR-ALM
    • 参考文献

约束优化:PHR-ALM 增广拉格朗日函数法

基础预备:

约束优化:约束优化的三种序列无约束优化方法

凸优化学习笔记:Lagrange函数、对偶函数、对偶问题、KKT条件

由前面的分析我们已经知道,在约束优化的三种序列无约束优化方法中,罚函数法存在Hessian矩阵条件数爆炸而难以求解的问题,Uzawa’s Method要求原目标函数必须为连续凸,这些都对适用范围存在严苛限制。增广拉格朗日函数法对原问题的凸性不做要求,并可以通过对二次罚函数进行某种修正,使得对有限的罚因子,得到的逼近最优解也是可行的。

等式约束非凸优化问题的PHR-ALM

从前面文章中的分析可知,不管原问题是不是凸优化问题,原问题的对偶问题一定是凸优化问题,这是因为对偶问题极大化的目标函数是凹函数,且约束集合为凸集,这是一个非常重要且有用的性质。如下图所示,在Uzawa’s method中,优化问题 d ( λ ) : = min ⁡ x f ( x ) + λ T h ( x ) , s . t . λ ≤ 0 d(\lambda):=\min _x f(x)+\lambda^{\mathrm{T}} h(x),s.t. \lambda \leq0 d(λ):=minxf(x)+λTh(x)s.t.λ0非凸,因为函数 f ( x ) + λ T h ( x ) f(x)+\lambda^{\mathrm{T}} h(x) f(x)+λTh(x)非凸,则无法求出唯一的最优 x x x带入下一步的 λ \lambda λ更新计算。

已知 max ⁡ λ f ( x ) + λ T h ( x ) = { f ( x ) , h ( x ) = 0 ∞ , otherwise  \max _\lambda f(x)+\lambda^{\mathrm T}h(x)=\left\{\begin{array}{l}f(x), h(x)=0 \\ \infty, \text { otherwise }\end{array}\right. maxλf(x)+λTh(x)={f(x),h(x)=0, otherwise 是一个不连续函数,如何处理这个不连续的函数,一个非常直观的方法就是将该问题近似成一个连续问题,这是PHR方法的基本思想。增加一项 − 1 2 ρ ∥ λ − λ ˉ ∥ 2 -\frac{1}{2 \rho}\|\lambda-\bar{\lambda}\|^2 2ρ1λλˉ2,用来近似平滑原来不连续的函数 max ⁡ λ f ( x ) + λ T h ( x ) \max _\lambda f(x)+\lambda^{\mathrm T}h(x) maxλf(x)+λTh(x),其中 ρ > 0 \rho>0 ρ>0用来惩罚 λ \lambda λ与先验值 λ ˉ \bar{\lambda} λˉ之间的偏差。

在这里插入图片描述

这样一来,函数 f ( x ) + λ T h ( x ) − 1 2 ρ ∥ λ − λ ˉ ∥ 2 f(x)+\lambda^{\mathrm{T}} h(x)-\frac{1}{2 \rho}\|\lambda-\bar{\lambda}\|^2 f(x)+λTh(x)2ρ1λλˉ2被近似成一个光滑函数,同时 f ( x ) + λ T h ( x ) f(x)+\lambda^{\mathrm T}h(x) f(x)+λTh(x)是关于 λ \lambda λ的线性函数,既是凸函数也是凹函数, − 1 2 ρ ∥ λ − λ ˉ ∥ 2 -\frac{1}{2 \rho}\|\lambda-\bar{\lambda}\|^2 2ρ1λλˉ2是关于 λ \lambda λ的严格凹函数,因此整个函数仍为严格凹,对于严格凹问题 max ⁡ λ f ( x ) + λ T h ( x ) − 1 2 ρ ∥ λ − λ ˉ ∥ 2 \max _\lambda f(x)+\lambda^{\mathrm{T}} h(x)-\frac{1}{2 \rho}\|\lambda-\bar{\lambda}\|^2 maxλf(x)+λTh(x)2ρ1λλˉ2有唯一最优解 λ ∗ \lambda^* λ满足:
∂ { f ( x ) + λ ⊤ h ( x ) − 1 2 ρ ∥ λ − λ ∥ 2 } ∂ λ = h ( x ) − 1 ρ ( λ − λ ˉ ) = 0 \frac{\partial\left\{f(x)+\lambda^{\top} h(x)-\frac{1}{2 \rho}\|\lambda-\lambda\|^2\right\}}{\partial \lambda}=h(x)-\frac{1}{\rho}(\lambda-\bar{\lambda})=0 λ{f(x)+λh(x)2ρ1λλ2}=h(x)ρ1(λλˉ)=0
可解得 λ ∗ ( λ ˉ ) = λ ˉ + ρ h ( x ) \lambda^*(\bar{\lambda})=\bar{\lambda}+\rho h(x) λ(λˉ)=λˉ+ρh(x),即最优解 λ ∗ \lambda^* λ是关于 λ \lambda λ的函数。将 λ ∗ \lambda^* λ带入原问题:
min ⁡ x max ⁡ λ f ( x ) + λ T h ( x ) − 1 2 ρ ∥ λ − λ ˉ ∥ 2 = min ⁡ x f ( x ) + λ ∗ ( λ ˉ ) T h ( x ) − 1 2 ρ ∥ λ ∗ ( λ ˉ ) − λ ˉ ∥ 2 = min ⁡ x f ( x ) + ( λ ˉ + ρ h ( x ) ) T h ( x ) − ρ 2 ∥ h ( x ) ∥ 2 = min ⁡ x f ( x ) + λ ˉ T h ( x ) + ρ 2 ∥ h ( x ) ∥ 2 \begin{aligned} & \min _x \max _\lambda f(x)+\lambda^{\mathrm{T}} h(x)-\frac{1}{2 \rho}\|\lambda-\bar{\lambda}\|^2 \\ = & \min _x f(x)+\lambda^*(\bar{\lambda})^{\mathrm{T}} h(x)-\frac{1}{2 \rho}\left\|\lambda^*(\bar{\lambda})-\bar{\lambda}\right\|^2 \\ = & \min _x f(x)+(\bar{\lambda}+\rho h(x))^{\mathrm{T}} h(x)-\frac{\rho}{2}\|h(x)\|^2 \\ = & \min _x f(x)+\bar{\lambda}^{\mathrm{T}} h(x)+\frac{\rho}{2}\|h(x)\|^2 \end{aligned} ===xminλmaxf(x)+λTh(x)2ρ1λλˉ2xminf(x)+λ(λˉ)Th(x)2ρ1 λ(λˉ)λˉ 2xminf(x)+(λˉ+ρh(x))Th(x)2ρh(x)2xminf(x)+λˉTh(x)+2ρh(x)2
在这里插入图片描述

此时得到一个与原问题近似的无约束最优化问题,可以用例如L-BFGS方法求解。这就是PHR-ALM的基本思路,通过在原拉格朗日函数的基础之上增加一个增广项获得一个增广拉格朗日函数 L ( x , λ ; ρ ) \mathcal{L}(x, \lambda ; \rho) L(x,λ;ρ),来得到近似光滑且容易解的优化问题。为了更接近于原问题,有两种措施:(1)使 1 ρ → 0 \frac{1}{\rho} \rightarrow 0 ρ10 或者 ρ → + ∞ \rho \rightarrow+\infty ρ+,以获取二次罚函数的效果,但 ρ \rho ρ如果很大则和前面分析的罚函数缺陷一样,成为一个Hessian矩阵条件数爆炸的病态问题;(2)迭代更新先验值 λ ˉ ← λ ∗ ( λ ˉ ) \bar{\lambda} \leftarrow \lambda^*(\bar{\lambda}) λˉλ(λˉ)

下面介绍一种更为常用的增广拉格朗日函数形式。在迭代过程中,子内循环无约束优化问题 x k + 1 = argmin ⁡ x L ρ k ( x , λ k ) x^{k+1}=\operatorname{argmin}_x \mathcal{L}_{\rho^k}\left(x, \lambda^k\right) xk+1=argminxLρk(x,λk)每次都不需要求解很精确的 x k x^k xk,因为外循环会不断细化 λ k \lambda^k λk x k x^k xk

在这里插入图片描述

不等式约束非凸优化问题的PHR-ALM

对于不等式约束的非凸问题,核心思想是通过引入松弛变量 s s s,将不等式约束转化为等式约束,然后再写成增广拉格朗日函数形式。如下图所示,引入松弛变量 s s s,原问题维度从n维上升到n+m维。原问题为:
min ⁡ x ∈ R n f ( x ) s.t.  g ( x ) ≤ 0 \begin{array}{rl} \min _{x \in \mathbb{R}^n} & f(x) \\ \text { s.t. } & g(x) \leq 0 \end{array} minxRn s.t. f(x)g(x)0
引入松弛变量后变为等式约束的非凸优化问题:
min ⁡ x ∈ R n , s ∈ R m f ( x ) s.t.  g ( x ) + [ s ] 2 = 0 \begin{aligned} & \min _{x \in \mathbb{R}^n, s \in \mathbb{R}^m} f(x) \\ & \text { s.t. } \quad g(x)+[s]^2=0 \\ & \end{aligned} xRn,sRmminf(x) s.t. g(x)+[s]2=0
将转化后的问题写成增广拉格朗日函数形式:
min ⁡ x ∈ R n , s ∈ R m f ( x ) + ρ 2 ∥ g ( x ) + [ s ] 2 + λ ρ ∥ 2 = min ⁡ x ∈ R n min ⁡ s ∈ R m f ( x ) + ρ 2 ∥ g ( x ) + [ s ] 2 + λ ρ ∥ 2 = min ⁡ x ∈ R n f ( x ) + ρ 2 ∥ max ⁡ [ g ( x ) + λ ρ , 0 ] ∥ 2 \min _{x \in \mathbb{R}^n, s \in \mathbb{R}^m} f(x)+\frac{\rho}{2}\left\|g(x)+[s]^2+\frac{\lambda}{\rho}\right\|^2=\min _{x \in \mathbb{R}^n} \min _{s \in \mathbb{R}^m} f(x)+\frac{\rho}{2}\left\|g(x)+[s]^2+\frac{\lambda}{\rho}\right\|^2=\min _{x \in \mathbb{R}^n} f(x)+\frac{\rho}{2}\left\|\max \left[g(x)+\frac{\lambda}{\rho}, 0\right]\right\|^2 xRn,sRmminf(x)+2ρ g(x)+[s]2+ρλ 2=xRnminsRmminf(x)+2ρ g(x)+[s]2+ρλ 2=xRnminf(x)+2ρ max[g(x)+ρλ,0] 2
为与等式约束的拉格朗日乘子 λ \lambda λ区分开,将不等式约束非凸问题的增广拉格朗日函数写成:
L ρ ( x , μ ) : = f ( x ) + ρ 2 ∥ max ⁡ [ g ( x ) + μ ρ , 0 ] ∥ 2 \mathcal{L}_\rho(x, \mu):=f(x)+\frac{\rho}{2}\left\|\max \left[g(x)+\frac{\mu}{\rho}, 0\right]\right\|^2 Lρ(x,μ):=f(x)+2ρ max[g(x)+ρμ,0] 2
更新拉格朗日乘子 μ k + 1 = μ k + ρ h ( x k + 1 ) = μ k + ρ ( g ( x k + 1 ) + [ s k + 1 ] 2 ) \mu^{k+1}=\mu^k+\rho h(x^{k+1})=\mu^k+\rho\left(g\left(x^{k+1}\right)+\left[s^{k+1}\right]^2\right) μk+1=μk+ρh(xk+1)=μk+ρ(g(xk+1)+[sk+1]2)。对于 g ( x k + 1 ) + [ s k + 1 ] 2 g\left(x^{k+1}\right)+\left[s^{k+1}\right]^2 g(xk+1)+[sk+1]2,当 g ( x k + 1 ) > 0 g\left(x^{k+1}\right)>0 g(xk+1)>0,取 [ s ] 2 [s]^2 [s]2=0,当 g ( x k + 1 ) ≤ 0 g\left(x^{k+1}\right)\leq0 g(xk+1)0,取 [ s ] 2 = ∣ g ( x x + 1 ) ∣ [s]^2=\left|g\left(x^{x+1}\right)\right| [s]2= g(xx+1) ,因此有 g ( x k + 1 ) + [ s k + 1 ] 2 = max ⁡ [ g ( x k + 1 ) , 0 ] g\left(x^{k+1}\right)+\left[s^{k+1}\right]^2=\max \left[g\left(x^{k+1}\right), 0\right] g(xk+1)+[sk+1]2=max[g(xk+1),0]。综上,可消除松弛变量的影响从而得到:
μ k + 1 = max ⁡ [ μ k + ρ g ( x k + 1 ) , 0 ] \mu^{k+1}=\max \left[\mu^k+\rho g\left(x^{k+1}\right), 0\right] μk+1=max[μk+ρg(xk+1),0]
在这里插入图片描述

求证: min ⁡ x ∈ R n min ⁡ s ∈ R m f ( x ) + ρ 2 ∥ g ( x ) + [ s ] 2 + λ ρ ∥ 2 = min ⁡ x ∈ R n f ( x ) + ρ 2 ∥ max ⁡ [ g ( x ) + λ ρ , 0 ] ∥ 2 \min _{x \in \mathbb{R}^n} \min _{s \in \mathbb{R}^m} f(x)+\frac{\rho}{2}\left\|g(x)+[s]^2+\frac{\lambda}{\rho}\right\|^2=\min _{x \in \mathbb{R}^n} f(x)+\frac{\rho}{2}\left\|\max \left[g(x)+\frac{\lambda}{\rho}, 0\right]\right\|^2 minxRnminsRmf(x)+2ρ g(x)+[s]2+ρλ 2=minxRnf(x)+2ρ max[g(x)+ρλ,0] 2

证明:在前述问题中,已知 min ⁡ x ∈ R n , s ∈ R m f ( x ) + ρ 2 ∥ g ( x ) + [ s ] 2 + λ ρ ∥ 2 \min _{x \in \mathbb{R}^n, s \in \mathbb{R}^m} f(x)+\frac{\rho}{2}\left\|g(x)+[s]^2+\frac{\lambda}{\rho}\right\|^2 minxRn,sRmf(x)+2ρ g(x)+[s]2+ρλ 2 等价于 min ⁡ x ∈ R n min ⁡ s ∈ R m f ( x ) + ρ 2 ∥ g ( x ) + [ s ] 2 + λ ρ ∥ 2 \min _{x \in \mathbb{R}^n} \min _{s \in \mathbb{R}^m} f(x)+\frac{\rho}{2}\left\|g(x)+[s]^2+\frac{\lambda}{\rho}\right\|^2 minxRnminsRmf(x)+2ρ g(x)+[s]2+ρλ 2

对于松弛变量 s ∈ R m s \in \mathbb R^m sRm而言,其最优化问题为:
min ⁡ s ∈ R m ∥ g ( x ) + [ s ] 2 + λ p ∥ 2 \min _{s \in \mathbb{R}^m}\left\|g(x)+[s]^2+\frac{\lambda}{p}\right\|^2 sRmmin g(x)+[s]2+pλ 2
g ( x ) + λ ρ = a g(x)+\frac{\lambda}{\rho}=a g(x)+ρλ=a,有 min ⁡ s ∈ R m ∥ a + [ s ] 2 ∥ 2 \min _{s \in \mathbb{R}^m}\left\|a+[s]^2\right\|^2 minsRm a+[s]2 2

a > 0 a>0 a>0时, min ⁡ ( ∥ a + [ s ] 2 ∥ 2 ) = a \min \left(\left\|a+[s]^2\right\|^2\right)=a min( a+[s]2 2)=a,取 [ s ] 2 = 0 [s]^2=0 [s]2=0

a ≤ 0 a \leq 0 a0时, min ⁡ ( ∥ a + [ s ] 2 ∥ 2 ) = 0 \min \left(\left\|a+[s]^2\right\|^2\right)=0 min( a+[s]2 2)=0,取 [ s ] 2 = ∣ a ∣ [s]^2=|a| [s]2=a

所以,
min ⁡ s ∈ R m ∥ g ( x ) + [ s ] 2 + λ ρ ∥ 2 = ∥ max ⁡ [ g ( x ) + λ ρ , 0 ] ∥ 2 \min _{s \in \mathbb{R}^m}\left\|g(x)+[s]^2+\frac{\lambda}{\rho}\right\|^2=\left\|\max \left[g(x)+\frac{\lambda}{\rho}, 0\right]\right\|^2 sRmmin g(x)+[s]2+ρλ 2= max[g(x)+ρλ,0] 2

对于一般非凸优化问题的PHR-ALM

结合等式约束和不等式约束的分析,直接将等式约束拉格朗日函数的增广项和不等式约束拉格朗日函数的增广项相加,得到:
L ρ ( x , λ , μ ) : = f ( x ) + ρ 2 { ∥ h ( x ) + λ ρ ∥ 2 + ∥ max ⁡ [ g ( x ) + μ ρ , 0 ] ∥ 2 } \mathcal{L}_\rho(x, \lambda, \mu):=f(x)+\frac{\rho}{2}\left\{\left\|h(x)+\frac{\lambda}{\rho}\right\|^2+\left\|\max \left[g(x)+\frac{\mu}{\rho}, 0\right]\right\|^2\right\} Lρ(x,λ,μ):=f(x)+2ρ{ h(x)+ρλ 2+ max[g(x)+ρμ,0] 2}
在这里插入图片描述


参考文献

机器人中的数值优化

最优化:建模、算法与理论/最优化计算方法


http://chatgpt.dhexx.cn/article/tmUXG0YU.shtml

相关文章

matlab编写拉格朗日插值代码函数

要求:根据拉格朗日多项式插值法原理,设计算法流程并且编写拉格朗日插值代码函数。 代码如下: function[y]lagrange(x0,y0,x) %建立一个函数名为lagrange的函数,输入x0,y0为插值点的坐标,均为数组,x为要…

拉格朗日函数最优化问题

目的:将有约束条件的函数最优化问题通过拉格朗日函数转化为无条件的函数最优化问题。 条件极值最优化问题: 对于无条件的函数最优化问题,常用的有3种方式: 梯度下降:求解一阶导数,其实就是使用泰勒一阶展…

【深度学习】拉格朗日( Lagrange)中值定理

文章目录 1、定理2、几何意义3、证明思路4、有限增量定理5、推论1、定理 如果函数 f(x) 满足: 在闭区间[a,b]上连续; 在开区间(a,b)内可导。 那么在(a,b)内至少有一点ξ(a<ξ<b),使等式 : f(b)-f(a)=f′(ξ)(b-a) 成立,或: f′(ξ) =(f(b)-f(a)) / (b-a) 或存…

拉格朗日(lagrange)插值及其MATLAB程序

一、n次拉格朗日插值 根据《插值多项式的性质》中的定理6.1可得 其中&#xff08;6.19&#xff09;称为基函数&#xff0c;&#xff08;6.18&#xff09;称为拉格朗日多项式&#xff0c;用&#xff08;6.18&#xff09;计算插值称为拉格朗日多项式插值。 方法2&#xff1a;通过…

拉格朗日函数优化

等式约束最优化 可以写为&#xff1a; 引入拉格朗日乘子&#xff08;&#xff09;把问题转换成拉格朗日函数 因为对于任何可行解&#xff0c;有&#xff0c;所以有 &#xff0c;也就是&#xff0c;。 求解。对分别求的偏导数为零&#xff0c;得到方程组求解极值点&#xff0c…

增广拉格朗日函数法

增广拉格朗日函数法 在二次罚函数法中&#xff0c;为了保证可行性&#xff0c;罚因子必须趋于正无穷。此时&#xff0c;子问题因条件数爆炸而难以求解。那么&#xff0c;是否可以通过对二次罚函数进行某种修正&#xff0c;使得对有限的罚因子&#xff0c;得到的毕竟最优解也是…

增广拉格朗日函数法(ALM)

增广拉格朗日函数法&#xff08; Augmented Lagrangian method&#xff09; 一、等式约束 考虑问题&#xff1a; min ⁡ x f ( x ) s . t . c i ( x ) 0 , i 1 , ⋯ , m . \begin{array}{ll} \min_x &f(x)\\ s.t. &c_i(x) 0, \quad i1,\cdots,m. \end{array} min…

广义拉格朗日函数的理解

1、拉格朗日函数&#xff1a; 求极值 求函数f(x,y,z)在条件φ(x,y,z)0下的极值 方法&#xff08;步骤&#xff09;是&#xff1a; 1.做拉格朗日函数Lf(x,y,z)λφ(x,y,z),λ称拉格朗日乘数 2.求L分别对x,y,z,λ求偏导,得方程组,求出驻点P(x,y,z) 如果这个实际问题的最大或…

各种拉格朗日函数

目录 一&#xff0c;拉格朗日函数 二&#xff0c;部分拉格朗日函数 三&#xff0c;增广拉格朗日函数 一&#xff0c;拉格朗日函数 以三元函数为例&#xff1a; 求f(x,y,z)的极值&#xff0c;s.t.g(x,y,z)0 拉格朗日函数L(x,y,z,a) f(x,y,z) a * g(x,y,z) 在极值点处一…

拉格朗日函数相关推导

优化问题&#xff08;即高数中的求极值&#xff09;可分为三类&#xff1a;无约束、等式约束、不等式约束。 对于无约束的优化问题&#xff1a;求导&#xff0c;令导数为零即可求解。 等式约束优化&#xff1a;&#xff08;拉格朗日乘子法最开始就是求解等式约束优化的方法&…

HJ-浇花

链接&#xff1a;https://ac.nowcoder.com/acm/contest/322/M 来源&#xff1a;牛客网 时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C 32768K&#xff0c;其他语言65536K 64bit IO Format: %lld 题目描述 HJ养了很多花&#xff08;9999999…

单片机——自动浇花系统

目录 1、图片 2、代码 1、图片 2、代码 #include <reg51.h> //调用单片机头文件 #define uchar unsigned char //无符号字符型 宏定义 变量范围0~255 #define uint unsigned int //无符号整型 宏定义 变量范围0~65535#include <intrins.h>sbi…

基于ESP32的开源定时浇花系统

基于ESP32的开源定时浇花系统 文章目录 基于ESP32的开源定时浇花系统前言一、软硬件环境二、模块连接图1.浇花功能说明2.Web界面展示 总结 前言 养了些许花花草草&#xff0c;需要按时浇灌&#xff0c;奈何总是要出差&#xff08;总想出去玩&#xff09;&#xff0c;又怕没人浇…

RISC-V MCU 自动浇花装置设计

第一部分 设计概述 1.设计目的 在家里养养盆花可以陶冶情操&#xff0c;丰富生活&#xff0c;因此&#xff0c;家庭盆栽如今被许多人喜爱。花草生长问题80%以上是由花儿浇灌问题引起的;好不容易种植几个月的花草&#xff0c;因为浇水不及时而缺水死亡。虽然市场上有卖盆花自…

【Proteus仿真】【51单片机】自动浇花灌溉系统设计

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真51单片机控制器&#xff0c;使用LCD1602液晶、按键、DS18B20、PCF8591 ADC、土壤湿度传感器、水位传感器、蜂鸣器模块等。 系统运行后&#xff0c;LCD1602显示传感器检测的温度、…

自动浇花系统的电路分析

目录 ​​​电源电路 复位电路和晶振 UCB转TTL ​​​电源电路 首先是电源电路&#xff0c;我们来看电源电路的原理图。 首先忽略D、D-&#xff0c;我们先来看电源本身&#xff0c;除了两头的接地和VCC&#xff08;这是USB接口的特性&#xff09;&#xff0c;我们观察到右…

51单片机wifi物联网的浇花控制系统设计

硬件设计 浇花控制系统采用51单片机与LCD液晶显示屏来实现&#xff0c;利用温度、湿度传感器及相应的显示、驱动执行机构、报警装置等实现温室作物生长环境控制器的设计。 硬件电路主要由51单片机最小系统lcd1602显示屏蜂鸣器报警模块设置按键微型水泵adc0832模数转换模…

毕业设计 远程智能浇花灌溉系统 - stm32 单片机 嵌入式 物联网

文章目录 0 前言1 简介2 主要器件3 实现效果4 设计原理5 部分关键代码5 最后 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟学妹告诉学…

基于51单片机的智能浇花系统(可做毕设)

基于51单片机的智能浇花系统&#xff08;可做毕设&#xff09; 一、系统介绍二、仿真展示三、实物展示四、仿真过程五、代码1、ADC08322、LCD16023、按键4、水泵5、温湿度6、定时器7、main.c 五、完整工程 对LCD1602原理和操作掌握不好的可以看这篇&#xff1a; 快速掌握——LC…

毕设--自动浇花系统的设计

目录 毕设--自动浇花系统的设计1、作品实物图2、PCB原理图3、元器件清单4、土壤温湿度采集与显示5、硬件电路设计6、程序源码7、资料获取 毕设–自动浇花系统的设计 注&#xff1a;本毕设资源可在微信公众号&#xff1a;“Kevin的学习站” 中获取&#xff01; 1、作品实物图 2、…