Agent学习——1 day

一.什么是 Agent?

在人工智能领域,"Agent"(我们称之为"智能体")不是什么神秘的概念。你可以把它想象成任何一个能自主感知环境并采取行动以达成特定目标的东西。

一个最简单的例子就是你家里的恒温器。

  • 它能感知 (Perceive) 温度。

  • 它能行动 (Act) 来打开或关闭空调/暖气。

  • 它的目标 (Goal) 是维持你设定的温度。

所以,一个 Agent 必须具备两个核心能力:感知行动

例如我们通过一个实例来看:

设计一个"智能盆栽" Agent

设计一个能自动照顾自己的"智能盆栽" Agent。

这是所有工程师在项目开始前最重要的一步:系统设计和定义

为了精确地描述一个 Agent,我们通常使用一个叫做 PEAS 的框架。这是我们今天最重要的知识点。

框架 描述 "智能盆栽" Agent 的例子
P (Performance) 性能度量:我们如何判断 Agent 做得好不好? 1. 保持植物存活和健康。2. 最大化节省水和电。
E (Environment) 环境:Agent 在哪里工作? 1. 盆栽所在的房间。2. 土壤、空气、光线。
A (Actuators) 执行器:Agent 可以做什么动作? 1. 浇水泵(可以打开/关闭)。2. LED 生长灯(可以打开/关闭/调节亮度)。3. (可选)一个小的扬声器,在缺水时发出提醒。
S (Sensors) 传感器:Agent 可以感知到什么信息? 1. 土壤湿度传感器。2. 光照强度传感器。3. (可选)温度和空气湿度传感器。

Agent 的类型

Agent 可以很简单,也可以很复杂,这取决于它的"大脑"是哪种类型。

  1. 简单反射 Agent (Simple Reflex Agent)

    • 工作方式:完全基于当前的感知来行动。"如果...那么..."。

    • 盆栽例子如果 土壤湿度低于30%,那么打开水泵。这是一种简单的应激反应。

  2. 基于模型的反射 Agent (Model-Based Reflex Agent)

    • 工作方式:它维护一个内部的"世界模型",会考虑过去的状态。

    • 盆栽例子 :Agent 记得它"5分钟前刚刚浇过水"。所以如果土壤湿度仍然很低,它会判断可能是传感器坏了,而不是继续疯狂浇水。

  3. 基于目标的 Agent (Goal-Based Agent)

    • 工作方式:它有明确的目标,并且会思考"什么样的行动能帮我达成目标?"

    • 盆栽例子:它的目标是"让植物在下午3点前恢复健康状态"。它可能会计算出,现在开始浇水,并在1小时后打开生长灯,是达成这个目标的最佳路径。

  4. 基于效用的 Agent (Utility-Based Agent)

    • 工作方式:它不仅有目标,还能衡量不同结果的"好坏程度"(效用)。它追求"幸福感"最大化。

    • 盆栽例子:它知道"保持植物健康"很重要,但"节约用水"也很重要。它会在多个目标之间做权衡,找到一个最优解,比如:稍微让植物渴一点,但能节省50%的水,这是一个很好的"效用"。

二.从"感知"到"行动"的桥梁

如果我们已经定义了 Agent 的"五官"(Sensors)和"四肢"(Actuators),那么,它的"大脑"是如何工作的呢?

这个"大脑"在学术上被称为 Agent 函数 (Agent Function)

Agent 函数 是一个抽象的数学描述,它定义了 Agent 将会采取的任何一个行动,都取决于它到目前为止所感知到的完整历史序列

Action = f ( Percept Sequence )

这个概念有点抽象,对吧?在实际工程中,我们不可能把无限长的历史都存起来。所以我们编写的是 Agent 程序 (Agent Program)

Agent 程序 是 Agent 函数的具体实现。它运行在 Agent 的物理架构(比如扫地机器人的芯片)上,它只根据当前的感知(可能还有一些内部存储的状态)来决定下一步的行动。

举个例子:

  • 感知 (Percept): 扫地机器人的悬崖传感器返回 true (意味着前方是悬崖)。

  • Agent 程序 (Program): 内部的一段代码 if cliff_sensor == true: return "stop_and_turn_left"

  • 行动 (Action): 执行器接收到 "stop_and_turn_left" 指令,立刻停止前进马达,并启动左转马达。

这就是一个最简单的 感知 -> 思考 -> 行动 的完整闭环。

相关推荐
_饭团25 分钟前
字符串函数全解析:12 种核心函数的使用与底层模拟实现
c语言·开发语言·学习·考研·面试·蓝桥杯
Larry_Yanan26 分钟前
Qt网络开发之基于 QWebEngine 实现简易内嵌浏览器
linux·开发语言·网络·c++·笔记·qt·学习
芯跳加速32 分钟前
AI 视频自动化学习日记 · 第三天
人工智能·学习·ai·自动化·音视频
小陈phd1 小时前
多模态大模型学习笔记(二十一)—— 基于 Scaling Law方法 的大模型训练算力估算与 GPU 资源配置
笔记·深度学习·学习·自然语言处理·transformer
丝斯20111 小时前
AI学习笔记整理(75)——Python学习4
人工智能·笔记·学习
小帅学编程1 小时前
英语学习笔记
java·笔记·学习
AI成长日志1 小时前
【datawhale】hello agents开源课程学习记录第4章:智能体经典范式构建
学习·开源
EnglishJun1 小时前
ARM嵌入式学习(七)--- 汇编基础(数据指令、函数调用原理、中断原理)
arm开发·学习
今儿敲了吗1 小时前
python基础学习笔记第七章——文件操作
笔记·python·学习
ADHD多动联盟2 小时前
提升自控力差孩子的学习生活:有效的学习障碍帮助与冲动控制训练方法
学习·学习方法·玩游戏