15 行代码教 AI 开灯关灯:用神经网络做“聪明的节能管家”

不靠规则,不写 if-else,只靠“试错 + 奖励”,让 AI 学会智能控制灯光。 这就是 强化学习(Reinforcement Learning) 的魅力!


💡 问题:灯,到底该什么时候开?

你家的灯还在手动开关? 或者用“有人就开,没人就关”的简单逻辑?

但现实更复杂:

白天有人,但阳光充足

→ 不用开灯,省电!
深夜有人,房间很暗

→ 必须开灯,体验优先!
没人的时候

→ 灯开着就是浪费!

能不能让系统 自己学会 在各种情况下做出最优决策?

答案是:能!用强化学习 + 神经网络。


🤖 我们的目标:训练一个“智能灯控 AI”

它要能看懂三个信息( 状态,State ):

  1. 是否有人

    (红外传感器)

  2. 当前光照

    (光敏电阻)

  3. 现在几点

    (系统时钟)

然后决定一个动作( Action ):

开灯(1)


关灯(0)

而它的“老师”,只通过一个数字—— 奖励(Reward) 来告诉它:

“你刚才做得好,+1 分!” 或 “浪费电了,-0.3 分!”

久而久之,AI 就学会了 省电又贴心 的策略。


🧠 核心思想:用神经网络代替人工规则

传统做法:写一堆 if-else

强化学习做法: 让神经网络自己学这个“阈值”和“逻辑”!

输入状态 → 神经网络 → 输出每个动作的“预期收益”(Q值) → 选收益最高的动作

这就是 Deep Q-Network(DQN) 的精髓。


💻 极简代码演示(仅 20 行核心)

✅ 全程 无标签、无监督 ,只靠奖励信号自我进化!


🔍 概念与代码一一对应

RL 概念 代码体现 作用
State(状态) [occupied, light, time_norm] 描述当前环境
Action(动作) action = 0 or 1 智能体的决策
Reward(奖励) reward = … 反馈信号,指导学习方向
Policy(策略) model(s).argmax() + ε-探索 如何选动作
Q-Network model = nn.Sequential(…) 用神经网络估计 Q(s,a)
Learning loss.backward() + optimizer.step() 参数更新,越学越聪明

✅ 训练后,AI 学到了什么?

我们测试几个典型场景:

场景 AI 决策
🌙 深夜(3点),有人,房间很暗 ✅ 开灯
☀️ 正午(12点),有人,阳光充足 ✅ 关灯 (省电!)
🌃 晚上(22点),无人 ✅ 关灯
🌆 傍晚(18点),有人,光线昏暗 ✅ 开灯

它没有被写死规则,却 自己总结出了“合理开灯”的智慧 !


🌍 这不只是玩具:真实应用场景

🏢
智能办公楼
:自动调节照明、空调,年省电费 20%+
🏠
智能家居
:与米家、HomeKit 集成,无感节能
🏫
教室/会议室
:人走灯灭,人来灯亮,无需改造电路

核心都是同一个 RL 框架 ——只需换状态、动作、奖励!


🚀 为什么这很重要?

强化学习,是让机器具备 自主决策能力 的关键技术。

它不依赖人类经验写规则,而是:

  1. 感知环境

    (状态)

  2. 尝试行动

    (动作)

  3. 接受反馈

    (奖励)

  4. 自我优化

    (学习)

从一盏灯,到自动驾驶、机器人、金融交易——底层逻辑相通。


💬 结语

你不需要造出 AlphaGo,才能用上强化学习。 从一个灯开始,你就能构建真正“会思考”的智能系统。

代码虽小,思想巨大。 真正的 AI,不是更复杂的模型,而是更聪明的问题建模。


✅ 动手试试? 只需安装 PyTorch,复制上方代码,几分钟就能看到 AI 学会“聪明开灯”!

最后修改: 2026年7月1日

作者

评论

发表评论

您的邮箱地址不会被公开。