掌桥专利:专业的专利平台
掌桥专利
首页

一种提高寿险精算模型运行速度的方法

文献发布时间:2023-06-19 10:48:02


一种提高寿险精算模型运行速度的方法

技术领域

本发明属于寿险精算评估技术领域,具体涉及一种提高寿险精算模型运行速度的方法。

背景技术

目前,寿险精算评估是指保险公司依据人口统计、经济学基本原理、相关技术标准要求以及行业普遍操作惯例,针对所考察人身保险产品进行包括准备金、偿付能力、内含价值等在内的一系列相关财务结果的计算和/或复核的一种重要的工作和技术手段。根据相关法律法规要求,寿险公司需要定期就上述财务结果进行测算,并上报特定监管机构和/或向公众发布。

寿险精算评估工作需要使用寿险精算模型进行。用于寿险评估工作的寿险精算模型以保险公司销售的产品和对应保单数据为基础,使用精算和统计学专业方法,定量刻画保险公司未来包括保费和理赔支出等在内的各项现金流、负债、偿付能力成本、利润以及现金流和利润的折现值的数学模型。精算模型通常由一系列计算模块组成,比如,单张特定保单在未来保持有效的概率,特定产品特定赔付类别的赔付标准以及在未来特定时间段内的赔付现金流预期,寿险公司在未来特定时间段内的费用支出预期,投资回报预期,负债成本预期,偿付能力成本预期等等。而每个计算模块最重要的基本组成单元为时间序列,比如未来每个单位时间段的死亡人数、预计死亡理赔金额以及保险公司的日常管理成本等。一个精算模型通常由数十到数百个计算模块构成,包含数千个到数万个时间序列。

在进行具体的寿险评估工作时,评估人员将寿险精算模型对接公司的评估数据库。该数据库包含了公司所有的有效保单的信息,通常有几十万条到几百万条记录。针对每条记录,精算软件和模型通常基于如下的过程来进行计算:读入一条评估数据的各字段信息,并将其传输至各计算模块的对应变量;依照建模人员预先设置的计算逻辑,计算目标结果;将针对该条数据各模块的计算结果导出供汇总使用;将所有参与计算的模块重置,即清空所有计算信息,以供下一条评估数据使用。精算评估模型将重复上述步骤,直至完成所有评估数据库中数据的预测工作,并将所需要输出的计算结果加总。由于评估涉及的计算模块数量众多、待评估的数据记录条数巨大,因此计算耗时长,最长可达几十小时甚至上百小时。

发明内容

为了解决现有技术中存在的上述问题,本发明提出一种提高寿险精算模型运行速度的方法。

为实现上述目的,本发明采用如下技术方案:

一种提高寿险精算模型运行速度的方法,包括以下步骤:

步骤1,确定对寿险精算模型运行速度影响较大的计算模块A;

步骤2,寿险精算模型运行后,记录第i个计算模块A的输入向量x

步骤3,当第i个计算模块A的输入向量x

与现有技术相比,本发明具有以下有益效果:

本发明通过确定对寿险精算模型运行速度影响较大的计算模块A,寿险精算模型运行后记录计算模块A的首次计算结果,当计算模块A需要重复计算时,不再进行重复计算而是直接读取其已记录的首次计算结果,可避免大量的重复计算,从而明显提高寿险精算模型的运行速度,减小运行耗时。

附图说明

图1为本发明实施例一种提高寿险精算模型运行速度的方法的流程图。

具体实施方式

下面结合附图对本发明作进一步详细说明。

本发明实施例一种寿险精算模型计算结果的汇总方法,流程图如图1所示,所述方法包括以下步骤:

S101、确定对寿险精算模型运行速度影响较大的计算模块A;

S102、寿险精算模型运行后,记录第i个计算模块A的输入向量x

S103、当第i个计算模块A的输入向量x

在本实施例中,步骤S101用于确定对寿险精算模型运行速度影响较大的计算模块,或者说使运行耗时增加明显的计算模块,记为A。本实施例是通过避免重复计算来降低寿险精算模型的运行耗时,理论上对所有计算模块都进行上述操作能最大限度地降低耗时,但由于记录计算结果需要占用一定的内存空间,当占用的内存空间过大时,会使CPU的运行速度降低从而使寿险精算模型的运行耗时增加。因此,为了避免占用过多的内存空间,只记录对运行速度影响较大的计算模块的计算结果。

为了便于理解技术方案,下面给出一个应用实例。某保险公司希望对所有有效保单的《企业会计准则》下责任准备金进行测算。该公司所售的产品包括传统寿险、分红寿险和重疾险。这个精算评估模型至少包含a~r18个计算模块,通过分析得到5个对运行速度影响较大的计算模块,分别是d、h、i、k和l。d是年化死亡率预测模块,用于基于标准生命表输入以及公司的调整假设,计算被保险人在各年龄的死亡概率。这里,生命表通常为一张行业共同使用假设表格,记录着目标人群在各年龄段的整体死亡率。精算模型在计算时,将从计算机硬盘上读入该假设表格以支持后续计算;h是保金因子计算模块,用于计算每张保单在未来每个保单周年日可领取的每单位保单对应的退保金额。可能依产品退保金计算的方法不同而不同,也可能通过读取退保金因子表获得;i是用以支持退保金计算模块计算的寿险转换因子的计算模块;k是分红基础准备金因子计算模块,用于计算分红产品每单位保单在每个保单周年日用以计算保单红利的分配基础;l是用以支持分红基础准备金因子的寿险转换因子计算模块。

在本实施例中,步骤S102用于记录计算模块A的首次计算结果。输入计算模块的一条数据记录一般包含多个数据字段,因此,可以用由这些数据字段组成的一个输入向量表示这条数据记录。例如,可以将第i个计算模块A的输入数据记录用输入向量x

在本实施例中,步骤S103用于主要用于调用记录的计算结果。为了避免重复计算,当计算模块A的输入向量取与以前相同的向量值时,不再重新进行计算,而是直接调用首次计算时的计算结果。由于直接调用计算结果花费的时间明显小于重复计算花费的时间,因此,本实施例可明显降低寿险精算模型运行的总耗时。

作为一种可选实施例,所述S101确定计算模块A的方法包括:对寿险精算模型中的每个计算模块分别基于影响寿险精算模型运行速度的每个因素进行打分并加权求和,得到每个计算模块的得分,按照得分从大到小的顺序对计算模块排序,排在前面的n个计算模块即为计算模块A;所述因素包括:计算过程中需要读取表格的数据量,计算的复杂程度。

本实施例给出了确定对寿险精算模型运行速度较大的计算模块A的一种技术方案。由于影响运行速度的因素不只一种,因此需要综合考虑各种因素的影响。本实施例采用对所有计算模块基于各种影响因素进行综合打分、排序、取前n名的方法确定计算模块A。本实施例参与打分的因素包括计算过程中需要读取表格的数据量和计算的复杂程度。需要读入的表格数据量(由表格的数量、每个表格的大小等决定)是影响计算量的一个重要因素,也是影响运行速度的重要因素,所述表格数据量越大,运行速度越慢,耗时越大。计算模块进行计算的复杂程度同样是影响运行速度的重要因素,计算越复杂,运行速度越慢,耗时越大。对这两个因素进行综合打分的方法是:先分别对每个因素进行打分,然后根据各个因素对运行速度影响的大小确定加权因子,最后对两个因素的打分加权求和得到一个综合打分。

作为一种可选实施例,当记录计算结果占用的内存空间超过设定的阈值时,释放一部分内存空间,使被占用的内存空间小于所述阈值。

本实施例给出了一种内存管理策略,即通过控制计算结果占用内存空间的大小,使寿险精算模型的运行速度最大化。当记录计算结果占用的内存过大时,会降低CPU的运行速度,从而使寿险精算模型的运行时间增加,因此需要对计算结果占用内存空间的最大值进行限制。可通过反复实验测出寿险精算模型的运行时间最小时记录计算结果占用的内存容量,以此容量为设定阈值,当计算结果占用的内存空间超过所述阈值时,释放掉一部分内存空间,使被占用的内存空间小于所述阈值。

作为一种可选实施例,当记录计算结果占用的内存空间超过设定的阈值时,首先释放最后一次访问时刻距当前时刻时间最长的计算结果占用的内存空间。

本实施例给出了释放内存空间的一种技术方案。当记录计算结果占用的内存容量超过设定的阈值时,首先释放计算结果最后一次被访问的时刻距当前时刻时间最长的内存空间。这样处理的理由是:计算结果最后一次被访问的时刻距当前时刻的时间越长,说明被访问的频率越低;而记录访问频率不高的计算结果对提高寿险精算模型的运行速度效果不明显,因此应最先释放这些计算结果占用的内存空间。

上述仅对本发明中的几种具体实施例加以说明,但并不能作为本发明的保护范围,凡是依据本发明中的设计精神所做出的等效变化或修饰或等比例放大或缩小等,均应认为落入本发明的保护范围。

相关技术
  • 一种提高寿险精算模型运行速度的方法
  • 一种利用电子表格进行寿险精算模型校验的方法
技术分类

06120112683934