4w-有限状态机应用.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4w-有限状态机应用

* 用有限状态自动机模型解题 * 什么是有限状态自动机? Finite State Machine,又称有限状态机或简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。 状态:存储关于过去的信息,就是说,它反映从系统开始到现在时刻的输入变化。 转移:指示状态变更,并且用必须满足来确使转移发生的条件来描述它。 动作:是在给定时刻要进行的活动的描述。有多种类型的动作: 进入动作(Entry action)-在进入状态时进行 退出动作 -在退出状态时进行 输入动作 -依赖于当前状态和输入条件进行 转移动作 -在进行特定转移时进行 * 为了描述一个有限状态机的工作状况,可采用状态转换图。状态转换图是一个有向图,图中的每个节点表示一种状态,一条边(或弧)表示一个转换关系。 初始状态通常用 “没有起点的箭头” 指向它来表示。 终止状态是机器 完成了它的程序之后 的状态,它通常表示 为双重圆圈。 q0 q1 q3 q2 a a b b b 状态转换图 a * 状态表 除了状态转换图以外,还可以使用多种类型的状态转移表。最常见的表示如下: 当前状态和条件的组合指示出下一个状态。 完整的动作信息可以只使用脚注来增加。 状态转移表 当前状态 → 条件 ↓ 状态 A 状态 B 状态 C 条件 X … … … 条件 Y … 状态 C … 条件 Z … … … * FSM有两个不同的类别:接受器/识别器和变换器。 接受器产生一个二元输出,说要么“是”要么“否”来回答输入是否被机器接受。 在所有输入都被处理了的时候, 如果当前状态是接受状态,输入被接受; 否则被拒绝。 作为规则,输入是符号 (字符);动作不使用。 接受器状态机 q0 q1 q3 q2 a a b b b Err 非a或b a * 变换器使用动作基于给定输入和/或状态生成输出。常分为两种类型:Moore机和Mealy机。 Moore机-只使用进入动作的FSM,就是说输出只依赖于状态。Moore 模型的好处是行为的简单性。 例:一个电梯门的 Moore FSM。 状态“Opening”中的进入 动作 (E:) 开启电机开门, 在状态“Closing”中的进入 动作以反方向开启电机关门。 状态“Opened”和“Closed” 不进行任何动作。 变换器状态机(1) q0 opening cmd_open cmd_close closeing 开门 关门 opened closed * Mealy机-只使用输入动作的FSM,就是说输出依赖于输入和状态。 Mealy FSM 的使用经常导致状态数目的简约。 例:电梯门的Mealy FSM 有两个输入动作:“开启电机 关门如果 command_close 下达” 和“反向开启电机开门如果 command_open 下达”。 变换器状态机(2) q0 opened cmd_open/开门 cmd_close/关门 closed * FSM的类型 在实践中经常使用混合模型。 进一步可区分为确定型(DFA)和非确定型(NDFA、GNFA)自动机。在确定型自动机中,每个状态对每个可能输入只有精确的一个转移。在非确定型自动机中,给定状态对给定可能输入可以没有或有多于一个转移。 这个区分在实践而非理论中更有用,因为存在算法把任何 NDFA 转换成等价的 DFA,尽管这种转换一般会增加自动机的复杂性。 * 有限状态自动机的应用 有限状态自动机在很多不同领域中都是重要的,包括电子工程、 语言学、计算机科学、哲学、生物学、数学和逻辑学。有限状态机是在自动机理论和计算理论中研究的一类自动机。在计算机科学中,有限状态机被广泛用于建模应用行为、硬件电路系统设计、软件工程,编译器、网络协议、和计算与语言的研究。 针对许多类型的编程问题,建立有限状态自动机模型,可以为分析、求解带来很大的帮助。 * 例1:串口通信 两台微机通过串口通信, 需在两台机器间建立好连接后,才可以传递数据,可以使用有限状态自动机,描述串口通信的状态。 传输数据 收到 应答 断开 连接 发出连接请求 q0 q1 q2 q0:空闲状态 q1: 等待应答状态 q2:通信状态 * 例2:打电话 (状态机在通信领域的应用)。 在一次呼叫中,从建立连接到通话完毕,要经历摘机,拨号,应答,进行通话等过程,话机的状态及状态迁移如下所示。 q0 q1 q2 q3 q4 摘机 收到拨号音 拨号 收应答信号 挂机 收齐号码 q0:空闲状态 q1:等待拨号音状态 q2:可以拨号状态 q3:等待应答状态 q4:通话状态 状态迁移 状态 * 接受器有限状态机的形式化定义 一个五元组 其中:

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档