强化学习中值函数应用示例

一、Gridworld

        Gridworld是一个用于教授强化学习概念的简化的电子游戏环境。它具有一个简单的二维网格,智能体可以在其中执行动作并获得奖励。这个环境是有限的,因为它有一个明确的开始和结束状态,以及一组确定的动作和奖励。

        在Gridworld中,每个单元格代表一个状态,智能体可以在该状态执行四个可能的动作:向北、向南、向东或向西移动一个单元格。如果智能体执行的动作将它们移动到网格之外,它们的位置将保持不变,但它们将获得一个奖励1。另一方面,如果智能体从特殊状态A或B开始执行动作,它们将获得不同的奖励。

        从状态A开始,智能体执行的动作将使它们获得奖励+10,并将它们移动到A0单元格。类似地,从状态B开始,智能体执行的动作将使它们获得奖励+5,并将它们移动到B0单元格。

        通过这个简单的环境,学生可以学习强化学习的基本概念,如值函数、策略和最优解。此外,Gridworld还提供了用于评估和比较不同策略的工具,使学生能够更好地理解这些概念并应用它们来解决实际问题。

        在Gridworld图1中,使用了一个矩形网格来描绘一个简单的有限MDP(马尔可夫决策过程)的值函数。网格的每个单元格都对应于环境的一个状态。在每个单元格,有四个可能的动作:北、南、东、西,这些动作将确定性地将智能体移动到相应方向的一个单元格。如果动作会使智能体离开网格,那么其位置将保持不变,但也会获得一个奖励1。其他动作的奖励为0,除非它们将智能体从特殊状态A和B中移出。从状态A开始,所有四个动作都会产生奖励+10并将智能体移动到A0。从状态B开始,所有动作都会产生奖励+5并将智能体移动到B0。

图1

        假设智能体在所有状态下以相等的概率选择所有四个动作。图b显示了对于这个策略的值函数vπ,对于带折扣的奖励情况,折扣因子γ = 0.9。该值函数是通过求解方程计算得出的。请注意,靠近下边缘的负值是由于在该随机策略下,那里有很大可能性会撞到网格的边缘。状态A在该策略下是最好的状态,但其期望回报小于10,即其即时奖励,因为从A状态开始,智能体将被带到A0状态,从那里很可能会撞到网格的边缘。另一方面,状态B的估值超过5,即其即时奖励,因为从B状态开始,智能体将被带到B0状态,该状态具有正价值。从B0状态开始,由于可能撞到边缘而产生的预期惩罚(负奖励)超过了因可能撞到A或B而产生的预期收益。

二、高尔夫

        将打高尔夫球的过程表述为强化学习任务,我们会对每一击都施加一个惩罚(负面奖励),直到球进入洞中。状态为球的位置,一个状态的价值是,从此位置到球洞的击球次数。我们的行动是针对如何瞄准和挥动球杆的动作,当然,还包括选择哪种球杆。让我们假设这些都是给定的,只需要考虑球杆的选择,我们假设只能是推杆或驱动器。图2的上半部分显示了对于始终使用推杆的策略可能的状态值函数vputt(s)。在洞中的终端状态的价值为0。我们假设无论在球场的哪个位置,我们都可以推杆;这些状态的价值为e1。如果我们在绿地之外的位置,就无法通过推杆到达洞穴,因此其价值更大。如果我们可以通过推杆从某个状态到达绿地,那么该状态的价值必须比绿地的价值少1,即2。为了简化问题,我们假设可以非常精确和确定性地进行推杆,但范围有限。这给我们提供了图中标记为d2的尖锐等高线;位于该线与绿地之间的所有位置都需要恰好两次击球来完成这个洞。同样地,位于e2等高线以内的任何位置都必须具有价值3,依此类推,得到图中所示的所有等高线。推杆无法让我们从沙陷阱中脱身,因此沙陷阱的价值为负无穷大。总体而言,我们需要六次击球才能从发球台到达洞穴。

图2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/109200.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

use renv with this project create a git repository

目录 1-create a git repository 2-Use renv with this project 今天在使用Rstudio过程中,发现有下面两个新选项(1)create a git repository (2) Use renv with this project. 选中这两个选项后,创建新项目,在项目目…

NEFU数字图像处理(三)图像分割

一、图像分割的基本概念 1.1专有名词 前景和背景 在图像分割中,我们通常需要将图像分为前景和背景两个部分。前景是指图像中我们感兴趣、要分割出来的部分,背景是指和前景不相关的部分。例如,对于一张人物照片,人物就是前景&…

目标检测算法改进系列之添加EIOU,SIOU,AlphaIOU,FocalEIOU等

YOLOv8添加EIoU,SIoU,AlphaIoU,FocalEIoU,Wise-IoU等 yolov8中box_iou其默认用的是CIoU,其中代码还带有GIoU,DIoU,文件路径:ultralytics/yolo/utils/metrics.py,函数名为:bbox_iou 原始代码 def bbox_i…

故障诊断模型 | Maltab实现LSTM长短期记忆神经网络故障诊断

文章目录 效果一览文章概述模型描述源码设计参考资料效果一览 文章概述 故障诊断模型 | Maltab实现LSTM长短期记忆神经网络故障诊断 模型描述 长短记忆神经网络——通常称作LSTM,是一种特殊的RNN,能够学习长的依赖关系。 他们由Hochreiter&Schmidhuber引入,并被许多人进行了…

2023 年值得关注的国外网络安全初创公司

网络安全初创公司试图解决的问题往往有点超前于主流。他们可以比大多数老牌公司更快地填补空白或新兴需求。初创公司通常可以更快地创新,因为它们不受安装基础的限制。 当然,缺点是初创公司往往缺乏资源和成熟度。公司致力于初创公司的产品或平台是有风…

基于单片机的空气质量检测系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式 文章目录 概要 一、主要内容二、系统方案设计2.1 系统方案设计2.2 主控制器模块选择 三、 系统软件设计4.1 程序结构分析4.2系统程序…

基于SSM的会员卡管理系统设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

S32K144芯片焊接完成后使用S32DS初次下载无法下载解决方法

一、问题现象如下,S32DS Debug下报错 二、原因,原厂芯片出厂时的FLASH Memory的安全机制是激活的,仿真器是可以连上,但是没法读取Flash Memory的内容 三、解决方法 参考图示,解锁后即可正常Debug

Mac电脑配置Dart编程环境

1.安装Dart SDK 官网地址:https://dart.dev/get-dart $brew tap dart-lang/dart$brew install dart 安装后,用命令检测一下是否安装正常。 $brew info dart 2.VS Code配置Dart环境 1).安装VS Code 官网地址:https://code.visualstudio.c…

【技能树笔记】网络篇——练习题解析(十)

【技能树笔记】网络篇系列前九篇 【技能树笔记】网络篇——练习题解析(一)-CSDN博客 【技能树笔记】网络篇——练习题解析(二)-CSDN博客 【技能树笔记】网络篇——练习题解析(三)-CSDN博客 【技能树笔记】网…

DAY38 动态规划 + 509. 斐波那契数 + 70. 爬楼梯 + 746. 使用最小花费爬楼梯

动态规划理论 动态规划,Dynamic Programming, DP, 如果某一问题有很多重叠子问题,使用动态规划是最有效的。 所以动态规划中每一个状态一定是由上一个状态推导出来的,这一点就区分于贪心,贪心没有状态推导…

Cross Site Scripting (XSS)

攻击者会给网站发送可疑的脚本,可以获取浏览器保存的网站cookie, session tokens, 或者其他敏感的信息,甚至可以重写HTML页面的内容。 背景 XSS漏洞有不同类型,最开始发现的是存储型XSS和反射型XSS,2005,Am…

Node学习笔记之user用户API模块

1、获取用户的基本信息 步骤 获取登录会话存储的session中用户的id判断是否获取到id根据用户id查询数据库中的个人信息检查指定 id 的用户是否存在将密码设置为空将数据返回给前端 // 获取用户信息数据 exports.userinfo (req, res) > {(async function () {// 1. 获取…

C语言每日一练(二)

单链表经典算法专题 一、 单链表相关经典算法OJ题1:移除链表元素 解法一:在原链表中删除Node.nextnext的节点 typedef struct ListNode ListNode; struct ListNode* removeElements( ListNode* head, int val) {ListNode* pcur head;ListNode* pre h…

CVE-2021-44228 Apache log4j 远程命令执行漏洞

一、漏洞原理 log4j(log for java)是由Java编写的可靠、灵活的日志框架,是Apache旗下的一个开源项目,使用Log4j,我们更加方便的记录了日志信息,它不但能控制日志输出的目的地,也能控制日志输出的内容格式;…

【数据结构】插入排序

⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:浅谈数据结构 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 直接插入、希尔排序 1. 什么是排序2…

lesson2(补充)关于>>运算符和<<运算符重载

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 前言&#xff1a; cout和cin我们在使用时需要包含iostream头文件&#xff0c;我们可以知道的是cout是写在ostream类里的&#xff0c;cin是写在istream类里的&#xff0c;他们都是定义出的对象&#xff0c;而<< 和 >…

c++多线程

目录 一、进程与线程 二、多线程的实现 2.1 C中创建多线程的方法 2.2 join() 、 detach() 和 joinable() 2.2.1 join() 2.2.2 detach() 2.2.3 joinable() 2.3 this_thread 三、同步机制&#xff08;同步原语&#xff09; 3.1 同步与互斥 3.2 互斥锁&#xff08;mu…

笔记本电脑搜索不到wifi6 无线路由器信号

路由器更换成wifi6 无线路由器后&#xff0c;手机能搜索到这个无线信号&#xff0c;但是笔记本搜索不到这个无线信号&#xff0c;后网上搜索后发现是无线网卡驱动问题&#xff0c;很多无线网卡使用的是Intel芯片&#xff0c;Intel就此发布了公告&#xff0c;升级驱动就可以彻底…

npm install报错,解决记录

第一步&#xff1a;检查和安装 我这里建议检查 1.node.js版本是否和前使用版本一致 2.npm版本是否和前使用版本一致 3.vue版本是否和前使用版本一致 4.vue脚手架是否和前使用版本一致 5.npm镜像是否和前使用版本一致 1.检查版本 【node版本】 命令&#xff1a;node -v 结果&a…