智能体(agent)与 奖励函数(reward function)& 策略(policy)
智能体(agent)与环境(environment)之间的交互。
一、奖励函数(reward function)
奖励函数(reward function),它为智能体在特定状态下采取的每个动作提供即时奖励(或惩罚)。
-
游戏环境(如Atari游戏)
场景:智能体需要学会玩Atari游戏,比如Pong或Breakout。
奖励函数:
在Pong中,每次击球得分时给予正奖励,失去球时给予负奖励。
在Breakout中,每次击中砖块给予正奖励,失去球时给予负奖励。 -
自主驾驶汽车
场景:智能体控制一辆自动驾驶汽车,目标是安全、快速地从起点到达终点。
奖励函数:
每行驶一定距离给予正奖励。
如果车辆偏离道路或接近碰撞给予负奖励。
到达目的地给予大量正奖励。 -
机器人导航
场景:一个机器人需要从房间的一个点导航到另一个点。
奖励函数:
每向目标点移动一步给予小的正奖励。
如果机器人触碰到障碍物或边界给予负奖励。
成功到达目标点给予大量正奖励。 -
股票交易
场景:智能体需要学习何时买入和卖出股票以最大化利润。
奖励函数:
每次交易后,如果智能体获得利润给予正奖励,亏损给予负奖励。
持有股票不活跃时,可以给予小的负奖励以鼓励智能体进行交易。 -
语言模型
场景:训练一个语言模型来生成自然的语言文本。
奖励函数:
每次生成的句子与训练数据中的文本相似度高给予正奖励。
生成的句子语法错误或语义不通给予负奖励。 -
健康应用
场景:开发一个应用,鼓励用户保持健康的生活方式。
奖励函数:
用户完成健康活动(如走路、跑步)给予正奖励。
用户达到健康目标(如步数、卡路里消耗)给予额外正奖励。
用户未能达到目标或进行不健康行为给予负奖励。 -
拼图游戏(如Sudoku或Tetris)
场景:智能体需要学会解决Sudoku或玩Tetris。
奖励函数:
在Sudoku中,每填入一个正确的数字给予正奖励,填错给予负奖励,完成拼图给予大量正奖励。
在Tetris中,每消除一行给予正奖励,游戏失败给予负奖励。 -
节能优化
场景:智能体控制建筑物的能源使用,目标是最小化能源消耗。
奖励函数:
每减少一定量的能源消耗给予正奖励。
如果能源使用超过某个阈值给予负奖励。
达到节能目标给予额外正奖励。
二、策略(policy)
策略(Policy)是一个从状态空间到动作空间的映射,它定义了智能体在给定状态下应该采取什么动作。策略是智能体行为的指导原则,其目的是最大化长期累积奖励。
-
简化的棋盘游戏(如井字棋 Tic-Tac-Toe)
状态空间:游戏棋盘上每个格子的可能状态(空、X 或 O)。
动作空间:在空格子上放置 X 或 O 的选择。
策略:一个简单的策略可能是:
如果有赢的机会,优先放置 X 或 O。
如果对手有赢的机会,阻止它。
否则,随机选择一个空格子。 -
自动驾驶
状态空间:包括车辆的速度、周围物体的位置、交通信号、道路条件等。
动作空间:加速、减速、转向、变道等。
策略:策略可能是:
如果前方有停车标志,减速并停车。
如果交通信号为绿灯,且道路畅通,加速前进。
如果检测到行人横穿马路,紧急刹车。 -
机器人路径规划
状态空间:机器人在环境中的当前位置。
动作空间:向前移动、向后移动、左转、右转等。
策略:策略可能是:
如果前面是障碍物,左转或右转避开障碍物。
如果当前位置接近目标,直接向前移动。 -
股票交易算法
状态空间:包括股票的历史价格、交易量、市场趋势等。
动作空间:买入、卖出、持有。
策略:策略可能是:
如果股票价格低于其历史平均价格,且市场趋势向上,买入。
如果股票价格高于其历史平均价格,且交易量减少,卖出。
如果市场不稳定,持有观望。 -
客户服务聊天机器人
状态空间:用户的问题、情绪状态、之前的对话历史。
动作空间:不同的回答选项或行动。
策略:策略可能是:
如果用户表现出不满,提供安抚的回答并提供帮助选项。
如果用户询问常见问题,提供标准答案。
如果用户的问题复杂,转接给人工客服。 -
游戏AI(如Pacman)
状态空间:Pacman的位置、怪物的位置、可以吃的点、能量豆的位置。
动作空间:上、下、左、右移动。
策略:策略可能是:
如果怪物靠近,寻找最近的转弯点以躲避。
如果能量豆附近没有怪物,朝能量豆移动。
如果路径清晰,朝最近的可以吃的点移动。