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

一种基于强化学习构建分子反应力场的系统及方法技术方案

技术编号:21574267 阅读:51 留言:0更新日期:2019-07-10 16:08
本发明专利技术提供一种基于强化学习构建分子反应力场的系统及方法,涉及材料信息学技术领域。本发明专利技术包括输入输出模块、参数与配置模块、分子动力学接口模块、环境设置模块、优化模块;输入输出模块将初始反应力场描述文件传输至参数与配置模块;参数与配置模块与优化模块;环境设置模块用于保存数据和输出初始力场参数,将该参数输出至分子动力学接口模块,分子动力学模块用于将得到的材料物性误差输出至优化模块;优化模块用于得到优化后的力场参数,并形成优化力场文件输出至输入输出模块。该方法可以快速、准确优化得到原子体系的反应力场用于分子动力学模拟,从而大幅度缩减材料的研发成本,提升材料的研发效率。

A System and Method of Constructing Molecular Reaction Force Field Based on Reinforcement Learning

【技术实现步骤摘要】
一种基于强化学习构建分子反应力场的系统及方法
本专利技术涉及材料信息学
,尤其涉及一种基于强化学习构建分子反应力场的系统及方法。
技术介绍
分子动力学方法是计算材料学模拟实验的一种理论方法,是研究凝聚态系统的有力科研工具。该方法不仅可以得到原子的运动轨迹,还可以观察到原子运动过程中的各种微观细节,可以深入认知原子尺度的现象机理。随着高性能计算机的普及与改进,分子模拟软件开始逐渐普及,例如NAMD、GROMACS、Amber、Lammps等。这些软件能够较好地通过模拟的方法代替实验来得出结果,可以有效地减少材料设计的试错成本。由于模拟时需要构造原子或分子的势函数或力场参数,传统的分子力场构建通常采用遗传算法,而这一算法有着计算时间长,大规模实验准确性误差难以量化的问题,对使用者的计算机性能、知识掌握能力、结果预判能力提出了很大的挑战。
技术实现思路
本专利技术要解决的技术问题是针对上述现有技术的不足,提供一种基于强化学习构建分子反应力场的系统及方法,本方法可以快速、准确优化得到原子体系的反应力场用于分子动力学模拟,从而大幅度缩减材料的研发成本,提升材料的研发效率。为解决上述技术问题,本专利技术所采取的技术方案是:一方面,本专利技术提供一种基于强化学习构建分子反应力场的系统,包括输入输出模块、参数与配置模块、分子动力学接口模块、环境设置模块、优化模块;输入输出模块用于输入目标分子的初始反应力场描述文件和输出优化力场文件,并将初始反应力场描述文件传输至参数与配置模块;参数与配置模块用于读取初始反应力场描述文件对文件进行解析,根据解析后的初始反应力场描述文件用户选择算法并载入与该算法相对应的强化学习模型,并将强化学习模型传输至优化模块;环境设置模块用于保存数据和输出初始力场参数,将初始力场参数输出至分子动力学接口模块,所述保存数据包括目标分子的几何文件、目标分子的参考训练集和目标分子的参数集;分子动力学模块用于提取环境设置模块中的力场参数并进行分子动力学模拟获取目标分子的材料物性误差,并将获得的误差输出至优化模块;优化模块用于根据目标分子的材料物性误差通过强化学习模型对力场参数进行优化,并根据优化后的力场参数形成优化力场文件,将得到的优化力场文件传输至输入输出模块;另一方面,本专利技术还提供一种基于强化学习构建分子反应力场的方法,通过一种基于强化学习构建分子反应力场的系统实现,包括以下步骤:步骤1:用户通过输入输出模块输入目标分子的初始反应力场描述文件,并解析该文件,用户在解析后的初始反应力场描述文件中选择用户需要的算法并载入与该算法相对应的强化学习模型;所述的目标分子的初始反应力场描述文件的解析方法为:通过正则表达式删除注释、定位数据区、识别头文件和分隔符,并将解析后的数据保存到列表容器中,封装成为方便对其进行读写操作的对象;定位待优化的参数,封装待优化的参数,然后对运算符进行重载。步骤2:根据目标分子从环境设置模块选取初始力场参数Q={q1,q1,…qn},其中n代表初始力场参数总数;所述环境设置模块中包括目标分子的几何文件、目标分子的参考训练集和目标分子的参数集;步骤3:采用分子动力学模块对初始力场参数进行分子动力学模拟,获取目标分子的材料物性数据;并通过奖励函数获取误差Δerr1;步骤4:调整初始力场参数大小继续进行模拟,通过奖励函数获取误差Δerr2;步骤5:比较误差Δerr2与误差Δerr1,判断力场参数调整方向;若判断误差减小,则保存调整后的力场参数Q′={q′1,q′1,…q′n},执行步骤6;若误差增大,则反向调节力场参数,并返回步骤4;步骤6:将步骤1中选择的强化学习模型加以训练,基于强化学习算法产生训练后的力场参数Q″={q″1,q″1,…q″n},比较训练后力场参数与步骤2中选取的初始力场参数或步骤5中得到的调整后的力场参数,将两者的差值与预设误差值进行判断,若其两者的差值大于预设误差值,则执行步骤4;若其两者的差值小于等于预设误差值,则将训练后力场参数Q″={q″1,q″1,…q″n}转换为优化力场文件,将优化力场文件传输至输入输出模块并输出优化力场文件;所述的强化学习算法采用了优先回放机制,选择TD偏差δ作为设置采样权重的标准,TD偏差大,该状态处的值函数与TD目标的差距大,观察序列j处对应的TD偏差为δj,则该观察序列处的采样概率为:其中,P(j)表示观察序列j处的采样概率,pjε表示在采样率为ε时在观察序列j处的采样率,pkε表示表示在采样率为ε时在观察序列集k的采样率之和。其中pkε由TD偏差δj决定,这里rank(j)根据|δj|的排序得到;训练过程中使用的参数更新如下式所示:其中θt+1是更新后的参数,θt表示更新前的参数,s代表更新前状态,a表示当前动作,θ表示当前参数,s′代表更新后状态,a′表示下一动作,通过函数获得,θ-表示下一参数。α表示根据输入条件选择的学习率,表示TD目标值,其中r表示误差变化率reward,γ表示折扣因子,是使得(s′,a′;θ)取得最大值所对应的a′,表示状态为s′,动作为a′,参数为θ-的奖赏最大值。Q(s,a;θ)为状态为s,动作为a,参数为θ的奖赏值,是状态为s,动作为a,参数为θ的奖赏变化。所述步骤3中的奖励函数为每次执行后会返回误差的变化率,误差的变化率是当前状态也就是当前解和上一个状态之间的距离;每次更新后得到的新的力场参数进行重新评估,同时得到当前反应力场参数对应的误差值;所述误差的变化率的表达式为:reward=errt-1-errt其中errt表示在t时间步上的误差;errt-1表示在t-1时间步上的误差;误差errt的公式为:其中,表示累积奖赏值的实际值,表示累积奖赏值的理想值,weighti表示权重,N表示时间步总数。所述步骤6中的强化学习算法中还包括统计累计步数t的计数器变量,如果在某一个回合中当前迭代步误差值erri小于历史最小误差值err*,并且误差的变化率和强化学习过程中误差的最小值都小于某一规定阈值,当累计步数t小于规定阈值时,每运行一次,累计步数自增1,表示为t←t+1,当累计步数t大于其设定值tmax,则认为已经进入最优位置点,放缓搜索步伐通过调整学习率α或者动作幅值,等当前回合结束后,使用该回合内的误差最小值对err*进行更新,当某一回合的迭代误差小于历史最小误差,则将当前误差值替换为历史最小误差,表示为err*←minimum{erri},实现对重要的经验进行重新强化学习。采用上述技术方案所产生的有益效果在于:本专利技术提供的一种基于强化学习构建分子反应力场的系统及方法;通过本专利技术所提出的基于强化学习的分子动力学反应力场构造方法,用户可以通过参数与配置模块选定特定力场参数;基于选定的参数和优化算法模块;使用多进程的方式与环境模块交互来实现并行训练;使用输入输出模块与分子动力学模拟衔接并获得回报及其状态;采取动作策略改变力场参数的值。本方法可以快速、准确优化得到原子体系的反应力场用于分子动力学模拟,从而大幅度缩减材料的研发成本,提升材料的研发效率。附图说明图1为本专利技术实施例提供的基于强化学习构建分子反应力场的系统结构图;图2为本专利技术实施例提供的基于强化学习构建分子反应力场的方法流程图;图3为本专利技术实施例提供的本文档来自技高网...

【技术保护点】
1.一种基于强化学习构建分子反应力场的系统,其特征在于:包括输入输出模块、参数与配置模块、分子动力学接口模块、环境设置模块、优化模块;输入输出模块用于输入目标分子的初始反应力场描述文件和输出优化力场文件,并将初始反应力场描述文件传输至参数与配置模块;参数与配置模块用于读取初始反应力场描述文件对文件进行解析,根据解析后的初始反应力场描述文件用户选择算法并载入与该算法相对应的强化学习模型,并将强化学习模型传输至优化模块;环境设置模块用于保存数据和输出初始力场参数,将初始力场参数输出至分子动力学接口模块,所述保存数据包括目标分子的几何文件、目标分子的参考训练集和目标分子的参数集;分子动力学模块用于提取环境设置模块中的力场参数并进行分子动力学模拟获取目标分子的材料物性误差,并将获得的误差输出至优化模块;优化模块用于根据目标分子的材料物性误差对力场参数进行优化,并根据优化后的力场参数形成优化力场文件,将得到的优化力场文件传输至输入输出模块。

【技术特征摘要】
1.一种基于强化学习构建分子反应力场的系统,其特征在于:包括输入输出模块、参数与配置模块、分子动力学接口模块、环境设置模块、优化模块;输入输出模块用于输入目标分子的初始反应力场描述文件和输出优化力场文件,并将初始反应力场描述文件传输至参数与配置模块;参数与配置模块用于读取初始反应力场描述文件对文件进行解析,根据解析后的初始反应力场描述文件用户选择算法并载入与该算法相对应的强化学习模型,并将强化学习模型传输至优化模块;环境设置模块用于保存数据和输出初始力场参数,将初始力场参数输出至分子动力学接口模块,所述保存数据包括目标分子的几何文件、目标分子的参考训练集和目标分子的参数集;分子动力学模块用于提取环境设置模块中的力场参数并进行分子动力学模拟获取目标分子的材料物性误差,并将获得的误差输出至优化模块;优化模块用于根据目标分子的材料物性误差对力场参数进行优化,并根据优化后的力场参数形成优化力场文件,将得到的优化力场文件传输至输入输出模块。2.一种基于强化学习构建分子反应力场的方法,通过权利要求1所述的一种基于强化学习构建分子反应力场的系统实现,其特征在于:包括以下步骤:步骤1:用户通过输入输出模块输入目标分子的初始反应力场描述文件,并解析该文件,用户在解析后的初始反应力场描述文件中选择用户需要的算法并载入与该算法相对应的强化学习模型;所述的目标分子的初始反应力场描述文件的解析方法为:通过正则表达式删除注释、定位数据区、识别头文件和分隔符,并将解析后的数据保存到列表容器中,封装成为方便对其进行读写操作的对象;定位待优化的参数,封装待优化的参数,然后对运算符进行重载;步骤2:根据目标分子从环境设置模块选取初始力场参数Q={q1,q1,…qn},其中n代表初始力场参数总数;所述环境设置模块中包括目标分子的几何文件、目标分子的参考训练集和目标分子的参数集;步骤3:采用分子动力学模块对初始力场参数进行分子动力学模拟,获取目标分子的材料物性数据;并通过奖励函数获取误差Δerr1;步骤4:调整初始力场参数大小继续进行模拟,通过奖励函数获取误差Δerr2;步骤5:比较误差Δerr2与误差Δerr1,判断力场参数调整方向;若判断误差减小,则保存调整后的力场参数Q′={q′1,q′1,…q′n},执行步骤6;若误差增大,则反向调节力场参数,并返回步骤4;步骤6:将步骤1中选择的强化学习模型加以训练,基于强化学习算法产生训练后的力场参数Q″={q″1,q″1,…q″n},比较训练后力场参数与步骤2中选取的初始力场参数或步骤5中得到的调整后的力场参数,将两者的差值与预设误差值进行判断,若其两者的差值大于预设误差值,则执行步骤4;若其两者的差值小于...

【专利技术属性】
技术研发人员:孟祥颖许芷铭付东东姚志远高婧
申请(专利权)人:东北大学
类型:发明
国别省市:辽宁,21

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

1