当前位置: 首页 > 专利查询>武汉大学专利>正文

一种基于强化学习的物联网终端远程升级方法及装置制造方法及图纸

技术编号:38876792 阅读:12 留言:0更新日期:2023-09-22 14:09
本发明专利技术公开了一种基于强化学习的物联网终端远程升级方法及装置,涉及物联网技术领域,该方法包括通过网关发送升级请求至物联网终端,以通知物联网终端进行远程升级,所述升级请求包括更新服务器的地址、远程升级的最晚截止时间;对物联网终端的Flash区域进行划分,将Flash划分为应用软件程序区域和升级引导程序区域;物联网终端接收升级请求后切换中断向量表由应用软件程序切换至升级引导程序,基于强化学习算法进行分布式自主升级决策;基于FTP协议,物联网终端与更新服务器间通讯,以下载更新所需文件,并进行Q表的更新,以及进行应用软件固件的更新。本发明专利技术能够保证远程更新升级的可靠性。级的可靠性。级的可靠性。

【技术实现步骤摘要】
一种基于强化学习的物联网终端远程升级方法及装置


[0001]本专利技术涉及物联网
,具体涉及一种基于强化学习的物联网终端远程升级方法及装置。

技术介绍

[0002]随着物联网技术的发展,传感器等物联网感知设备的数量呈爆发式增长,从而产生了大量的实时数据。在传感器网络中,终端设备需要向网关上报数据并通过网关进行管理。随着实际需要的变化和安全问题的产生,物联网终端设备的固件常常需要通过远程升级的方式进行更新。在远程升级过程中,物联网终端需要获取新的固件后将其加载到内存中完成更新。但是,同时对所有终端设备进行更新往往超过了网关的处理能力。当网关处理的更新请求数目超出负荷时,容易导致响应超时、更新失败等情况,造成时间以及能源上的浪费。
[0003]目前,常规的物联网设备远程升级方案通过对物联网设备进行编号,借由网关分批发送更新请求从而控制同时进行升级的设备数量。这种方法管理简单,但是自动化程度低,在面临复杂的环境状况时容易表现不佳,实时性差,无法对网络环境变化做出反应,也无法充分利用网关的资源。

技术实现思路

[0004]针对现有技术中存在的缺陷,本专利技术的目的在于提供一种基于强化学习的物联网终端远程升级方法及装置,能够保证远程更新升级的可靠性。
[0005]为达到以上目的,本专利技术提供一种基于强化学习的物联网终端远程升级方法,具体包括以下步骤:
[0006]通过网关发送升级请求至物联网终端,以通知物联网终端进行远程升级,所述升级请求包括更新服务器的地址、远程升级的最晚截止时间;
[0007]对物联网终端的Flash区域进行划分,将Flash划分为应用软件程序区域和升级引导程序区域;
[0008]物联网终端接收升级请求后切换中断向量表由应用软件程序切换至升级引导程序,基于强化学习算法进行分布式自主升级决策;
[0009]基于FTP协议,物联网终端与更新服务器间通讯,以下载更新所需文件,并进行Q表的更新,以及进行应用软件固件的更新。
[0010]在上述技术方案的基础上,所述物联网终端日常运行情形下运行应用软件程序,当接收到网关发送的升级请求之后,切换中断向量表由应用软件程序切换至升级引导程序。
[0011]在上述技术方案的基础上,所述基于强化学习算法进行分布式自主升级决策,具体步骤包括:
[0012]对物联网终端的升级次数进行判定,若物联网终端为首次升级,则物联网终端对
时隙编号进行随机初始化作为初始状态并将Q表初始化,反之则使用上次升级时所采用的时隙编号作为状态并延用Q表;
[0013]根据ε

greedy策略选择动作,以ε的概率进行随机选择,以1

ε的概率通过查找Q表选择当前状态下Q值最大的动作,根据选择的动作对时隙编号进行修改得到新状态;
[0014]根据网关发送的升级请求中的远程升级的最晚截止时间,以及时隙编号计算本次远程升级的启动时间,等待时间到达后开始进行远程升级。
[0015]在上述技术方案的基础上,
[0016]在进行Q表初始化时,根据应用场景的需要对Q表赋值,且可提高Q表中各个时隙状态下采用减小时隙编号动作的Q值,以在更短的时隙内完成升级。
[0017]在上述技术方案的基础上,所述动作包括减小时隙编号、保持时隙编号和增大时隙编号。
[0018]在上述技术方案的基础上,所述基于FTP协议,物联网终端与更新服务器间通讯,以下载更新所需文件,具体步骤包括:
[0019]物联网终端与更新服务器间通过FTP协议进行通信,物联网终端下载应用软件固件描述文件并解析文件内容,所述应用软件固件描述文件包括固件版本号、固件文件大小、作者和修改日期;
[0020]物联网终端将原固件版本号与解析应用软件固件描述文件得到的固件版本号进行对比,以判断是否需要下载新应用软件固件:
[0021]若是,则物联网终端下载新应用软件固件,并验证完整性,然后切换至应用软件程序;
[0022]若否,则直接切换至应用软件程序。
[0023]在上述技术方案的基础上,所述进行Q表的更新,其中,进行Q表更新所采用的更新公式为:
[0024]Q(s,a)=Q(s,a)+A(r+γ*max(Q(s

,a

))

Q(s,a))
[0025]其中,Q(s,a)表示在状态s下采用动作a的Q值,s表示当前状态,a表示选择的动作,A表示学习率,r表示奖励函数,γ表示折扣因子,s

表示执行完动作a后的下一状态,a

表示在状态s

下选择的动作,Q(s

,a

)表示在状态s

下采用动作a

得到的Q值。
[0026]在上述技术方案的基础上,在进行应用软件固件的更新之前,还包括:
[0027]判断应用软件固件是否下载成功:
[0028]若是,则进行应用软件固件的更新;
[0029]若否,则从升级引导程序切换至应用软件程序,向网关上报更新失败并结束本次更新。
[0030]在上述技术方案的基础上,所述进行应用软件固件的更新,具体步骤包括:
[0031]保存升级引导程序的中断向量表,设置升级标识,关闭中断,清空应用软件程序代码区;
[0032]依次读取下载的应用软件固件的512字节数据并进行解析,所述应用软件固件包含地址标识以及ASCII码形式的机器码;
[0033]升级引导程序提取地址标识并存入地址变量中,并将ASCII码形式的机器码转为十六进制机器码并存入缓存区;
[0034]持续读取应用软件固件直至全部读取完成,当读取到文件末尾EOF时将缓冲区内的数据写入地址变量所指的Flash中,修改升级标识为已完成,将额外的中断向量表缓冲区的数据按块写入主控制器的中断向量表处并进行覆盖,开启中断;
[0035]物联网终端重启主控制器,切换到应用软件程序并向网关上报新的固件版本号;
[0036]其中,在对应用软件固件进行解析,当缓存区存储空间满时,则对缓存区进行处理,处理方式为:若地址变量指向中断向量表,则将缓存区内数据按照偏移量写入额外的中断向量表缓冲区中,反之,则将缓冲区的内容按块写入地址变量所指的Flash中,并且修改地址变量使地址变量指向下一次机器码的写入地址。
[0037]本专利技术提供的一种基于强化学习的物联网终端远程升级装置,包括:
[0038]发送模块,其用于通过网关发送升级请求至物联网终端,以通知物联网终端进行远程升级,所述升级请求包括更新服务器的地址、远程升级的最晚截止时间;
[0039]划分模块,其用于对物联网终端的Flash区域进行划分,将Flash划分为应用软件程序区域和升级引导程序区域;
[0040]决策模块,其用于驱使物联网终端接收升级请求后切换中断向量本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于强化学习的物联网终端远程升级方法,其特征在于,具体包括以下步骤:通过网关发送升级请求至物联网终端,以通知物联网终端进行远程升级,所述升级请求包括更新服务器的地址、远程升级的最晚截止时间;对物联网终端的Flash区域进行划分,将Flash划分为应用软件程序区域和升级引导程序区域;物联网终端接收升级请求后切换中断向量表由应用软件程序切换至升级引导程序,基于强化学习算法进行分布式自主升级决策;基于FTP协议,物联网终端与更新服务器间通讯,以下载更新所需文件,并进行Q表的更新,以及进行应用软件固件的更新。2.如权利要求1所述的一种基于强化学习的物联网终端远程升级方法,其特征在于:所述物联网终端日常运行情形下运行应用软件程序,当接收到网关发送的升级请求之后,切换中断向量表由应用软件程序切换至升级引导程序。3.如权利要求1所述的一种基于强化学习的物联网终端远程升级方法,其特征在于,所述基于强化学习算法进行分布式自主升级决策,具体步骤包括:对物联网终端的升级次数进行判定,若物联网终端为首次升级,则物联网终端对时隙编号进行随机初始化作为初始状态并将Q表初始化,反之则使用上次升级时所采用的时隙编号作为状态并延用Q表;根据ε

greedy策略选择动作,以ε的概率进行随机选择,以1

ε的概率通过查找Q表选择当前状态下Q值最大的动作,根据选择的动作对时隙编号进行修改得到新状态;根据网关发送的升级请求中的远程升级的最晚截止时间,以及时隙编号计算本次远程升级的启动时间,等待时间到达后开始进行远程升级。4.如权利要求3所述的一种基于强化学习的物联网终端远程升级方法,其特征在于:在进行Q表初始化时,根据应用场景的需要对Q表赋值,且可提高Q表中各个时隙状态下采用减小时隙编号动作的Q值,以在更短的时隙内完成升级。5.如权利要求3所述的一种基于强化学习的物联网终端远程升级方法,其特征在于:所述动作包括减小时隙编号、保持时隙编号和增大时隙编号。6.如权利要求3所述的一种基于强化学习的物联网终端远程升级方法,其特征在于,所述基于FTP协议,物联网终端与更新服务器间通讯,以下载更新所需文件,具体步骤包括:物联网终端与更新服务器间通过FTP协议进行通信,物联网终端下载应用软件固件描述文件并解析文件内容,所述应用软件固件描述文件包括固件版本号、固件文件大小、作者和修改日期;物联网终端将原固件版本号与解析应用软件固件描述文件得到的固件版本号进行对比,以判断是否需要下载新应用软件固件:若是,则物联网终端下载新应用软件固件,并验证完整性,然后切换至应用软件程序;若否,则直接切换至应用软件程序。7.如权利要求6所述的一种基于强化学习的物联网终端远程升级方法,其特征在于,所述进行Q表的更新,其中,进行Q表更新所采用的更新公式为:Q(s,a)=Q(s,a)+A(...

【专利技术属性】
技术研发人员:刘树波吴钧诚蔡朝晖涂国庆
申请(专利权)人:武汉大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1