[发明专利]一种基于Viterbi算法的确定指令的方法有效

专利信息
申请号: 201910971882.9 申请日: 2019-10-14
公开(公告)号: CN110737268B 公开(公告)日: 2022-07-15
发明(设计)人: 苏丽;迟泰宇;张智;朱齐丹;秦绪杰 申请(专利权)人: 哈尔滨工程大学
主分类号: G05D1/02 分类号: G05D1/02
代理公司: 暂无信息 代理人: 暂无信息
地址: 150001 黑龙江省哈尔滨市南岗区*** 国省代码: 黑龙江;23
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 viterbi 算法 确定 指令 方法
【权利要求书】:

1.一种基于Viterbi算法的确定指令的方法,其特征在于,包括以下步骤:

步骤一:将指令库与模型中的标号进行映射并利用指令库集合训练出模型,包括:根据任务要求构建一个指令集合,此指令集合包含三个指令库,每个指令库包含该任务所有可能用到的指令;对隐马尔可夫模型进行初始化,即赋初值给π=(πi),其中π为初始概率矩阵,i为第i状态;

利用Baum-Welch算法对人工构建的指令集合进行训练,得到隐马尔可夫的模型λ=(A,B,π),其中A=[aij]N*N为状态转移概率矩阵,N是可能的状态数,aij为第i个状态转移到第j个状态的概率,B=[bj(k)]N*M为观测概率矩阵,M为是可能的观测数,加上一个具体的状态集合Q={q1,q2,q3,...,qN}和观测序列V={v1,v2,v3,...,vM},则构成了隐马尔可夫模型的五元组,即λ=(A,B,π,Q,V),其中Q对应指令库集合,qi对应具体的指令库,其中1iN,N为指令库长度;V对应观测到的具体的指令集合,vj对应具体的指令,其中1jM,M为具体的指令长度;

I=(i1,i2,...,iT)指令库顺序,是长度为T的状态序列;O=(o1,o2,...,oT)是对应的观测序列即具体的指令顺序,πi=P(i1=qi),i=1,2,...,N是时刻t=1处于状态qi的概率,aij=P(it+1=qj|it=qi),i=1,2...N;j=1,2,...,N是在时刻t处于状态qi的条件下在时刻t+1转移到状态qj的概率,bj(k)=P(ot=vk|it=qj),k=1,2...,M;j=1,2,...,N是在时刻t处于状态qj的条件下生成观测到的具体的指令集合V中的第k个指令vk的概率;

步骤二:根据序列的实际情况将模型的初始值转换为Viterbi算法需要的首步值;

步骤三:根据首步的初始值进行递推并更新路径信息,包括:

以步骤二得到的序列初始值作为递推起点,利用公式进行递推,具体为:首先计算第一步所有可能值,设置一个中间变量Prob并赋予初值零,保留每一步的计算结果,并在此过程中选择前一状态的最优概率,并将此概率保存到数组V中;

新建二维数组path其中行数为状态的个数,列数为序列的长度,该数组保存历史的最优隐序列,在每步求解时均新建二维数组newpath,newpath的列数和维数与path相同,该数组保存当前步骤解的隐状态即指令库的序号,其初值来自于数组path,根据上一步计算的概率值确定当前的较优解,并以此修改path中的隐状态;

步骤四:递推终止并回溯最优路径;

步骤五:根据解码得到的状态序列推断下一刻的状态。

2.根据权利要求1所述的一种基于Viterbi算法的确定指令的方法,其特征在于:步骤二具体包括:

将步骤一得到的隐马尔可夫模型利用Viterbi进行解码:首先构建二维数组V用于存储每步的选择概率,利用初始概率π=(πi)对第一时刻状态为i的路径进行初始化,具体公式如下:

δ1(i)=πibi(o1),i=1,2,...,N。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910971882.9/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top