让我们考虑一个简单的自动售货机,其中一切花费20美分。假设这台自动售货机只需要镍和硬币,但没有更大或更小。

然后,我们可以模拟状态这台自动售货机以已存入的金额为准。起始状态将为零美分。有两种可能发生。

我们可以投入镍,五美分或可以投入一美元,以使状态达到10美分。

在我们思考之前,其余的过渡都相当简单。如果我们处于15美分的状态并且有人投入一毛钱该怎么办。

我们可以把它算为20。但让我们说,这台机器需要确切的变化,以便一角钱就会落下来,从机器底部的小托盘中取出。

正如你所看到的,有限状态机在概念上非常简单。那么为什么要谈论他们呢?

他们有自己的长处和短处。让我们从我们的优势开始。

首先,有限状态机很容易推理。他们基本上是自我记录,因为他们映射系统的逻辑状态直接指向物理状态。

当镍进入自动售货机时状态改变为比当前状态大5美分的状态。

接下来,它们是可维护的。如果我们想调整这台机器,那么一切都会花费

如果只增加一个状态,那么四分之一的事情就会变得很微不足道。

这给我们带来了有限状态机的弱点。主要的一点是他们很容易被滥用。

如果他们没有很好地设计开始或如果问题,我们只需添加另一个状态,这可能会导致一些草率的代码和不稳定的逻辑。

实际上这意味着有限状态机可以随着州基数的增加,很难维持。

第三期 行为规划——4.形式化FSM的更多相关文章

  1. 第三期 行为规划——10.用C++实现变道函数

    在之前的测验中,我们设计了一个成本函数,高速公路上到达一个目标选择一条车道. 公式中,Δd是车道间的纵向距离,Δs是车辆到目标之间的距离. 在这个测验中,需要用c++实现代价函数,但是这里有一个变换, ...

  2. 第三期 行为规划——11.在C ++中实现第二个成本函数

    在大多数情况下,单一成本函数不足以产生复杂的车辆行为.在这个测验中,我们希望您在C ++中实现更多的成本函数.我们稍后会在本课中使用这两个C ++成本函数.这个测验的目标是创建一个成本函数,使车辆在最 ...

  3. 第三期 第三期 搜索——1.运动规划(motion_planing)

    运动规划的根本问题在于机器人可能存在于一个这样的世界中, 它可能想找到一条到达这个目标的路径,那么就需要指定一个到达那里的计划, 自动驾驶汽车也会遇到这个问题.他可能处于高速公路的附近的街道网络中,他 ...

  4. POJ 2728 Desert King ★(01分数规划介绍 && 应用の最优比率生成树)

    [题意]每条路径有一个 cost 和 dist,求图中 sigma(cost) / sigma(dist) 最小的生成树. 标准的最优比率生成树,楼教主当年开场随手1YES然后把别人带错方向的题Orz ...

  5. cocos2d-x 游戏开发之有限状态机(FSM) (一)

    cocos2d-x 游戏开发之有限状态机(FSM) (一) 参考:http://blog.csdn.net/mgphuang/article/details/5845252<Cocos2d-x游 ...

  6. [bzoj1486][HNOI2009]最小圈——分数规划+spfa+负环

    题目 传送门 题解 这个题是一个经典的分数规划问题. 把题目形式化地表示,就是 \[Minimize\ \lambda = \frac{\sum W_{i, i+1}}{k}\] 整理一下,就是 \[ ...

  7. RChain的一键形式化验证:关于RCast 33 – LADL话题的讨论摘要

    作者/Atticbee 在这一集,Greg和RChain的研究人员Isaac,Christian讨论了TLA(Temporal Logic of Actions)和RChain的LADL(Logic ...

  8. es技术规划

    一.业务背景 es服务当前没有专门的部门负责维护和开发,交由各端自行负责维护,随着公司业务查询和统计需求非常多,会面临居多方面问题和挑战: 无人(专业RD或部门)负责 无专业的人进行维护,遇到问题几乎 ...

  9. 【课程汇总】OpenHarmony 成长计划知识赋能第三期系列课程(附链接)

    OpenHarmony 开源开发者成长计划第三期知识赋能课程硬核程度再次升级,带领开发者上手 OpenHarmony 的标准系统应用开发,学习标准设备应用开发,使用 eTS UI 开发分布式应用样例, ...

随机推荐

  1. Win7下设置WiFi热点

    Win7下设置WiFi热点 今天研究了下Win7设置WIFI热点,Connectify神马的都是浮云~亲測可用,现拿出来分享下~ 1.点击"開始",再点击"执行" ...

  2. ES6中async和await说明和用法

    昨天看了一篇vue的教程,作者用async/ await来发送异步请求,从服务端获取数据,代码很简洁,同时async/await 已经被标准化,是时候学习一下了. 先说一下async的用法,它作为一个 ...

  3. sending data mysql slow Mysql查询非常慢的可能原因

    1.用explain看看mysql的执行情况,可以得知,task_id扫描了近20万条数据,而且这个task_id不是索引 2.为这个task_id所在的表,将此字段添加索引后,查询就变得很快了

  4. visual studio code 调试reactjs

    1.首先到visual studio code官网下载ide. 2.打开visual studio code,点击右侧菜单条的小图标 找到[Debugger for Chrome],并安装 3.打开c ...

  5. ylbtech-自信:自信

    ylbtech-自信:自信 自信心(confidence),在心理学中,与其最接近的是班杜拉(A.Bandura)在社会学习理论中提出的自我效能感 (self-efficacy)的概念,是指个体对自身 ...

  6. ASP.NET Core 中使用TypeScript

    ASP.NET Core 注意:Visual Studio 2017和最新版本的ASP.NET的更新即将推出! 安装 ASP.NET Core 和 TypeScript 首先,若有必要请安装 ASP. ...

  7. Linux 配置yum源(互联网)

    Linux 配置yum源(互联网) 环境:操作系统Redhat 7.5 1.卸载现有的yum源 rpm -qa|grep yum|xargs rpm -e --nodeps     #移除与原yum有 ...

  8. Leetcode914.X of a Kind in a Deck of Cards卡牌分组

    给定一副牌,每张牌上都写着一个整数. 此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组: 每组都有 X 张牌. 组内所有的牌上都写着相同的整数. 仅当你可选的 X > ...

  9. LeedCode --- Best Time to Buy and Sell Stock

    题目链接 题意: find the maximum positive difference between the price on the ith day and the jth day 附上代码: ...

  10. request.getcontextPath() 详解 和 <link标签>

    classpath:只会到你的class路径中查找找文件; classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找. 绝对路径: D:\磊弟资料\最代码\智父子考试 ...