一种模型参数存储方法、装置及设备与流程

文档序号:16247655发布日期:2018-12-11 23:43阅读:127来源:国知局
一种模型参数存储方法、装置及设备与流程

本发明涉及模型管理领域,特别是涉及一种模型参数存储方法、装置及设备。

背景技术

现有技术中的一种建模方式是将模型定义及参数以表格的形式存储,在表格的基础上进行管理和维护。对于一些模型主体,其中的模型对象可能存在多个要存储的属性,每种属性都有其定义和参数值。随着模型存储的增加,需要存储的属性也势必要增加。然而表格在生成之后,其列数固定,只能够以增加行的方式进行纵向扩展,而无法增加列以进行横向扩展。这使得当模型主体中新增了一个属性,就要新建一个表格以增加这个属性对应的列,并将原始表格的内容转移到新的表格中。在模型数据日益增大的现今,这种存储方式使得模型数据的管理和维护工作量日益繁重。

因此,如何在模型参数的属性增加时方便新增属性的存储,进而方便模型的扩展,减轻模型数据管理和维护的工作压力,是本领域艺术人员需要解决的技术问题。



技术实现要素:

本发明的目的是提供一种模型参数存储方法、装置及设备,用于在模型参数的属性增加时方便新增属性的存储,进而方便模型的扩展,减轻模型数据管理和维护的工作压力。

为解决上述技术问题,本发明提供一种模型参数存储方法,包括:

接收模型对象;

将所述模型对象的基础参数值存储至第一参数表;

判断所述模型对象是否包括所述第一参数表中未定义的扩展参数;

如果是,则将所述扩展参数的定义及参数值以纵向扩展的形式存储至第二参数表。

可选地,所述第二参数表包括扩展参数定义表和扩展参数值表;

相应的,所述将所述扩展参数的定义及参数值以纵向扩展的形式存储至第二参数表具体包括:

判断所述扩展参数定义表中是否存储有所述扩展参数的定义;

如果是,则根据所述扩展参数定义表中存储的与所述扩展参数的定义对应的id值将所述扩展参数的参数值存储至所述扩展参数值表;

如果否,则在所述扩展参数定义表中以纵向扩展的形式增加所述扩展参数的定义,按预设规则生成与所述定义对应的id值,并根据生成的所述id值将所述扩展参数的参数值存储至所述扩展参数值表。

可选地,所述扩展参数定义表具体包括对象类型列、参数编码列、参数名称列、参数值类型列和默认值列。

可选地,所述扩展参数值表具体包括模型主体id列、参数id列、整型值列、浮点值列、字符串列和时间列。

可选地,还包括:

当接收到查询请求时,获取所述查询请求中的模型对象;

在所述第一参数表中读取所述模型对象的基础参数值;

在所述扩展参数定义表中读取所述模型对象的扩展参数的定义;

根据所述定义在所述扩展参数值表中读取所述扩展参数的参数值;

返回所述读取的基础参数值和扩展参数的参数值。

可选地,还包括:

当在预设时间内所述扩展参数的定义写入的次数大于预设值时,新建第三参数表;

将所述第一参数表中的内容复制入所述第三参数表,并将所述第二参数表中与所述定义对应的内容以列扩展的形式写入所述第三参数表;

保存所述第三参数表并以所述第三参数表替换所述第一参数表。

可选地,所述模型对象具体为电力现货市场模型对象。

为解决上述技术问题,本发明还提供一种模型参数存储装置,包括:

接收模块,用于接收模型对象;

第一存储模块,用于将所述模型对象的基础参数值存储至第一参数表;

判断模块,用于判断所述模型对象是否包括所述第一参数表中未定义的扩展参数;如果是,则激活第二存储模块;

所述第二存储模块,用于将所述扩展参数的定义及参数值以纵向扩展的形式存储至第二参数表。

可选地,所述第二参数表包括扩展参数定义表和扩展参数值表;

所述第二存储模块具体包括:

判断子模块,用于判断所述扩展参数定义表中是否存储有所述扩展参数的定义;如果是,则激活存储子模块以使所述存储子模块根据所述扩展参数定义表中存储的与所述扩展参数的定义对应的id值将所述扩展参数的参数值存储至所述扩展参数值表;如果否,则激活定义子模块以使所述定义子模块在所述扩展参数定义表中以纵向扩展的形式增加所述扩展参数的定义,按预设规则生成与所述定义对应的id值,并使所述存储子模块根据生成的所述id值将所述扩展参数的参数值存储至所述扩展参数值表。

所述定义子模块,用于在所述扩展参数定义表中以纵向扩展的形式增加所述扩展参数的定义,按预设规则生成与所述定义对应的id值,以及存储所述扩展参数的定义;

所述存储子模块,用于根据所述扩展参数定义表中存储的与所述扩展参数的定义对应的id值将所述扩展参数的参数值存储至所述扩展参数值表。

为解决上述技术问题,本发明还提供一种模型参数存储设备,包括:

存储器,用于存储指令,所述指令包括上述任意一项所述模型参数存储方法的步骤;

处理器,用于执行所述指令。

本发明所提供的模型参数存储方法,通过将模型对象的基础参数存储至第一参数表,将模型对象的扩展参数以纵向扩展的形式存储至第二参数表,使得在原本需要在第一参数表中进行列扩展才能增加的模型对象的属性可以在第二参数表中以行扩展的形式存储,从而无需修改第一参数表和第二参数表的结构、无需新建表格就可以存储新增的属性,简化了模型扩展的程序,从而更加方便模型扩展,更加适应模型数据量日益增加的需求,减轻了模型数据管理和维护的工作压力。本发明还提供一种模型参数存储装置及设备,具有上述有益效果。

附图说明

为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的第一种模型参数存储方法的流程图;

图2为本发明实施例提供的第二种模型参数存储方法的流程图;

图3为本发明实施例提供的第三种模型参数存储方法的流程图;

图4为本发明实施例提供的一种模型参数存储装置的结构示意图;

图5为本发明实施例提供的另一种模型参数存储装置的结构示意图;

图6为本发明实施例提供的一种模型参数存储设备的结构示意图。

具体实施方式

本发明的核心是提供一种模型参数存储方法、装置及设备,用于在模型参数的属性增加时方便新增属性的存储,进而方便模型的扩展,减轻模型数据管理和维护的工作压力。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明实施例提供的第一种模型参数存储方法的流程图。如图1所示,模型参数存储方法包括:

s10:接收模型对象。

s11:将模型对象的基础参数值存储至第一参数表。

s12:判断模型对象是否包括第一参数表中未定义的扩展参数;如果是,则进入步骤s13。

s13:将扩展参数的定义及参数值以纵向扩展的形式存储至第二参数表。

本发明实施例的步骤s10至步骤s13提出了一种在模型参数存储时的存储方案,相比于现有技术在增加了模型对象的属性时重新生成表格的方式,采用一个固定属性的第一参数表和一个扩展属性的第二参数表存储的方式,无需新建表格。

对于步骤s11来说,第一参数表为基础参数表,即其中存储了模型对象的基本的常见的属性,作为模型存储的核心所在。第一参数表的结构为固定列的横表结构,存储有固定的模型对象的属性,用户可以根据需要设置第一参数表中的属性。当新增模型对象时,以行扩展的形式,按模型对象所包括的属性的定义,将属性的参数值等写入第一参数表中。当需要读取模型对象的参数时,也可采用相关应用软件通过固定的接口高效地读取,具体可参考现有技术中的表格读写方式。

对于步骤s12和步骤s13来说,对于每个扩展属性的定义和参数值,同样以行扩展的形式将其写入第二参数表。不同于第一参数表的是,在第二参数表中,每为一个新的属性增加一行,都注明其定义与参数值,从而使在第一参数表中需要进行列扩展才能增加的属性,在第二参数表中通过行扩展实现存储。

本发明实施例提供的模型参数存储方法,通过将模型对象的基础参数存储至第一参数表,将模型对象的扩展参数以纵向扩展的形式存储至第二参数表,使得在原本需要在第一参数表中进行列扩展才能增加的模型对象的属性可以在第二参数表中以行扩展的形式存储,从而无需修改第一参数表和第二参数表的结构、无需新建表格就可以存储新增的属性,简化了模型扩展的程序,从而更加方便模型扩展,更加适应模型数据量日益增加的需求,减轻了模型数据管理和维护的工作压力。

在一种具体实施中,模型对象可以为电力现货市场模型对象。电力现货市场的模型对象包括市场成员、发电机组、负荷对象等。而在现有技术中,电力现货市场通常应用固定的模型,在电力现货市场的研究还处于摸索阶段时,采用基于成熟机制下的建模技术难以适应电力现货市场模型结构的变化要求。因此本发明实施例提供的模型参数存储方法在电力现货市场的建模过程中更具有益效果。

图2为本发明实施例提供的第二种模型参数存储方法的具体实施方式的流程图。如图2所示,在上述实施例的基础上,在另一实施例中,第二参数表包括扩展参数定义表和扩展参数值表;相应的,步骤s13具体包括:

s20:判断扩展参数定义表中是否存储有扩展参数的定义;如果是,则进入步骤s21;如果否,则进入步骤s22。

s21:根据扩展参数定义表中存储的与扩展参数的定义对应的id值将扩展参数的参数值存储至扩展参数值表。

s22:在扩展参数定义表中以纵向扩展的形式增加扩展参数的定义,按预设规则生成与定义对应的id值,并根据生成的id值将扩展参数的参数值存储至扩展参数值表。

在具体实施中,由于扩展参数的定义和参数值一般都由多个字段组成,如果将扩展参数的定义和参数值存储入同一个表格,对于不同的模型对象的相同定义的扩展参数,将写入大量重复的定义。因此将扩展参数的定义存储入扩展参数定义表中,再生成与定义对应的id值,并根据id值将扩展参数的参数值存储入扩展参数值表中。从而对于在扩展参数定义表中已经存储的定义,无需再进行写入,只需根据查找定义对应id值,在扩展参数值表中关联该id值并写入参数值即可。

可选地,扩展参数定义表具体可以包括对象类型列、参数编码列、参数名称列、参数值类型列和默认值列。即扩展参数定义表的行可以包括对象类型、参数编码、参数名称、参数值类型和默认值等字段。

可选地,扩展参数值表具体可以包括模型主体id列、参数id列、整型值列、浮点值列、字符串列和时间列。即扩展参数值表的行可以包括模型主体id、参数id、整型值、浮点值、字符串和时间等字段。

当新增一个模型对象时,读取模型对象的扩展参数的定义信息,根据扩展参数定义信息生成相应的模型参数维护界面中的参数维护项,并根据参数值类型和默认值控制参数输入,完成模型维护后,将相关模型参数分别存储至第一参数表和扩展参数值表中。

进一步地,在本发明实施例提供的模型参数存储方法的基础上,还可以包括:

当接收到查询请求时,获取查询请求中的模型对象。

在第一参数表中读取模型对象的基础参数值。

在扩展参数定义表中读取模型对象的扩展参数的定义。

根据定义在扩展参数值表中读取扩展参数的参数值。

返回读取的基础参数值和扩展参数的参数值。

通过在扩展参数定义表中增加扩展参数的定义的方式来灵活的增加某种类型的模型对象的属性参数,不修改基础的第一参数表、扩展参数定义表和扩展参数定义值表的结构,对相关应用程序接口也不产生影响。

而参数值由其定义对应的id值来定义其存放的值列,应用程序根据统一接口读取模型对象的参数值,接口传递的参数包括模型主体id、参数id,返回对应的参数值。

本发明实施例提供的模型参数存储方法,将扩展参数的定义和参数值存储入两个表格中,从而对于重复的定义,无需进行大量重复的写入,并且在读取时,可以根据扩展参数定义表中的定义,到扩展参数值表中检索到对应的扩展参数值,相比于本发明第一个实施例,可以更加快速的进行写入和读取。

图3为本发明实施例提供的第三种模型参数存储方法的流程图。如图3所示,在上述实施例的基础上,在另一实施例中,模型参数存储方法还包括:

根据权利要求1所述的模型参数存储方法,其特征在于,还包括:

s30:当在预设时间内所扩展参数的定义写入的次数大于预设值时,新建第三参数表。

s31:将第一参数表中的内容复制入第三参数表,并将第二参数表中与所述定义对应的内容以列扩展的形式写入第三参数表。

s32:保存第三参数表并以第三参数表替换第一参数表。

在具体实施中,当扩展参数的定义在预设时间的写入次数大于预设值时,认为该定义为新增的常见定义,因此新建第三参数表,在原有第一参数表的基础上为新增的定义增加一列,并将原有第二参数表中与新增的定义对应的内容写入第三参数表的新增列中。

进一步地,还可以包括:删除第二参数表中与所述定义对应的内容。

本发明实施例提供的模型参数存储方法,还包括在扩展参数的定义写入频率达到一定程度时,新建第三参数表,将该定义设置为基础参数的定义,进一步方便后续的存储与读取的过程。

上文详述了模型参数存储方法对应的各个实施例,在此基础上,本发明还公开了与上述方法对应的模型参数存储装置。

图4为本发明实施例提供的一种模型参数存储装置的结构示意图。如图4所示,模型参数存储装置包括:

接收模块401,用于接收模型对象;

第一存储模块402,用于将模型对象的基础参数值存储至第一参数表;

判断模块403,用于判断模型对象是否包括第一参数表中未定义的扩展参数;如果是,则激活第二存储模块;

第二存储模块404,用于将扩展参数的定义及参数值以纵向扩展的形式存储至第二参数表。

图5为本发明实施例提供的另一种模型参数存储装置的结构示意图。如图5所示,在上述实施例的基础上,在另一实施例中,第二参数表包括扩展参数定义表和扩展参数值表;

第二存储模块404具体包括:

判断子模块501,用于判断扩展参数定义表中是否存储有扩展参数的定义;如果是,则激活存储子模块以使存储子模块根据扩展参数定义表中存储的与扩展参数的定义对应的id值将扩展参数的参数值存储至扩展参数值表;如果否,则激活定义子模块以使定义子模块在扩展参数定义表中以纵向扩展的形式增加扩展参数的定义,按预设规则生成与定义对应的id值,并使存储子模块根据生成的id值将扩展参数的参数值存储至扩展参数值表。

定义子模块502,用于在扩展参数定义表中以纵向扩展的形式增加扩展参数的定义,按预设规则生成与定义对应的id值,以及存储扩展参数的定义;

存储子模块503,用于根据扩展参数定义表中存储的与扩展参数的定义对应的id值将扩展参数的参数值存储至扩展参数值表。

由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

图6为本发明实施例提供的一种模型参数存储设备的结构示意图。如图6所示,该模型参数存储设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)610(例如,一个或一个以上处理器)和存储器620,一个或一个以上存储应用程序633或数据632的存储介质630(例如一个或一个以上海量存储设备)。其中,存储器620和存储介质630可以是短暂存储或持久存储。存储在存储介质630的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对计算装置中的一系列指令操作。更进一步地,处理器610可以设置为与存储介质630通信,在模型参数存储设备600上执行存储介质630中的一系列指令操作。

模型参数存储设备600还可以包括一个或一个以上电源640,一个或一个以上有线或无线网络接口650,一个或一个以上输入输出接口660,和/或,一个或一个以上操作系统631,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

上述图1至图3所描述的模型参数存储方法中的步骤由模型参数存储设备基于该图6所示的结构实现。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的模型参数存储设备及计算机可读存储介质的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置、设备及计算机可读存储介质,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,功能调用装置,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上对本发明所提供的一种模型参数存储方法、装置及设备进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1