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" 指令,立刻停止前进马达,并启动左转马达。

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

相关推荐
吃好睡好便好5 小时前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
nashane5 小时前
HarmonyOS 6学习:CapsLock键失效诊断与长截图完整实现指南
学习·华为·harmonyos
xian_wwq7 小时前
【学习笔记】AGC协调控制系统概述
笔记·学习
憧憬成为java架构高手的小白8 小时前
docker学习笔记(基于b站多个视频学习)【未完结】
笔记·学习
辰海Coding8 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构
闫记康9 小时前
Linux学习day5
linux·chrome·学习
一楼的猫10 小时前
从工具链视角对比:番茄作家助手 vs 第三方写作辅助方案
java·服务器·开发语言·前端·学习·chatgpt·ai写作
他们叫我阿冠10 小时前
实习前自我培训-Day1学习
学习
Upsy-Daisy11 小时前
AI Agent 项目学习笔记(七):RAG 高级扩展——过滤检索、PgVector 与云知识库
人工智能·笔记·学习
柿柿快乐11 小时前
Redis 入门第一课:全局命令、内部编码与单线程模型
redis·学习·缓存·基础教学