首页> 中国专利> 算术处理设备、算术处理程序和算术处理方法

算术处理设备、算术处理程序和算术处理方法

摘要

提供了算术处理设备、算术处理程序和算术处理方法。算术处理设备包括确定单元。确定单元被配置成:基于针对第一代中的多个个体中的每个个体的适应度计算的计算完成的预定基准,从多个个体中确定不进化为第二代的个体的个体,第二代是第一代的下一代;以及确定使所确定的个体进化为第二代的下一代或第二代的后续代的个体。

著录项

  • 公开/公告号CN112987562A

    专利类型发明专利

  • 公开/公告日2021-06-18

    原文格式PDF

  • 申请/专利权人 富士通株式会社;

    申请/专利号CN202011288411.7

  • 发明设计人 角田有纪人;石原辉雄;

    申请日2020-11-17

  • 分类号G05B13/04(20060101);G06N3/08(20060101);G06N3/12(20060101);

  • 代理机构11227 北京集佳知识产权代理有限公司;

  • 代理人康建峰;乔图

  • 地址 日本神奈川县

  • 入库时间 2023-06-19 11:29:13

说明书

技术领域

本文讨论的实施方式涉及算术处理单元、算术处理程序和算术处理方法。

背景技术

已知遗传算法(GA)(例如,参见PTL 1)作为进化计算(EC)之一。根据遗传算法,例如,输入值被转换为位序列且被随机生成。然后,(通过保留具有良好特性的输入值)选择输入值,并对输入值重复进行交叉和变异以找到最佳输入值。

已知一种应用GA来设计最佳结构的技术。为了获取最佳结构,要执行适应度评估(性能评估)。为了执行适应度评估,要获取与设计的结构对应的强度分布。为了获取强度分布,要计算满足本征解条件的本征解。

例如,基于表达式(1)获取要用于最佳地设计光学表面声波(SAW)滤波器的SiO

[表达式(1)]

[表达式(2)]

并且A

GA用于最佳地设计光学表面声波(SAW)滤波器的SiO

图13是示出通过GA进行的SiO

算术处理单元获得与基因对应的结构作为输入值x

算术处理单元例如通过使用有限元方法(FEM)来计算输入值x

算术处理单元基于本征操作模式来相对于目标输入值计算性能(S140)。例如,算术处理单元根据针对作为每个结构的输入值的SAW强度分布计算与每个结构的光学信令信道的位置对应的SAW强度作为适应度。当输入值为x

算术处理单元评估与输入值对应的性能(适应度)(S150)。例如,以下面描述的方式执行对SAW强度的适应度的评估。对于输入值x

如果不满足结束条件,则算术处理单元基于评估结果选择输入值(S160)。例如,算术处理单元保留具有良好适应度的输入值x

算术处理单元生成下一代的输入值x

如果满足结束条件,则算术处理单元基于评估结果选择最佳输入值(步骤S180)。

上面的描述对应于算术处理单元对本征解的可能范围内的所有点执行收敛计算以获取本征解的情况。用于获取本征解的收敛计算要花费计算成本。因此,为了减少用于获取本征解的计算成本,公开了下述技术(例如,参见NPL 1),该技术通过使用神经网络(NN)预测近似本征解,开始收敛计算以从近似本征解中获取准确的本征解,并使计算范围变窄。

图14是示出通过使用NN预测的GA进行的SiO

算术处理单元获得与基因对应的结构作为输入值x

算术处理单元针对输入值x

算术处理单元例如通过使用FEM来计算每个输入值x

算术处理单元基于本征操作模式来相对于目标输入值计算性能(S250)。例如,算术处理单元根据针对作为每个结构的输入值的SAW强度分布计算与每个结构的光学信令信道的位置对应的SAW强度作为适应度。当输入值为x

算术处理单元评估与输入值对应的适应度(S260)。

如果不满足结束条件,则算术处理单元基于评估结果选择输入值(S270)。

算术处理单元生成下一代的输入值x

如果满足结束条件,则算术处理单元基于评估结果选择最佳输入值(步骤S290)。

图15是示出指示通过GA达到的解的参考示例的图。如图15所示,X轴指示作为一个适应度的在光学信令信道上的SAW强度A

图16是示出指示通过GA执行的计算的总数目的参考示例的图。在图16中,左条形图指示通过不使用NN预测的技术来计算本征解的计算的总数目。右条形图指示通过使用NN预测的技术来计算本征解的计算的总数目。根据使用NN预测的技术,在第26代及后续代中,用于计算本征解的计算次数可以减少至1/3。

引用列表

专利文献

[PTL 1]日本特许专利公布第2017-162069号

非专利文献

[NPL 1]Yukito Tsunoda等人."Neural-Network Assistance to CalculatePrecise Eigenvalue for Fitness Evaluation of Real Product Design"

发明内容

技术问题

由于独立地处理通过GA对每一代中每个基因的适应度计算,因此适应度计算可以并行执行。当将并行化应用于通过使用NN预测的GA对每一代中的基因的适应度计算时,计算结束的时间在基因之间不同。

这引起以下问题:每一代中适应度评估的速度可能不会增加。换句话说,例如,当针对每一代中的个体的适应度计算被并行化时,直至完成针对所有个体的适应度计算,才可以开始针对下一代的计算。换句话说,例如,针对每一代中的适应度评估的计算时间取决于针对该代中的最迟个体的处理。

特别地,例如,根据使用NN预测的GA,针对个体的适应度计算的计算次数和计算时间在NN预测为正确的情况与预测为错误的情况之间不同。因此,当存在具有错误预测的个体时,并行化处理中的等待时间可能会很长,并且针对该代的适应度评估的计算时间可能不会减少。也可以说,通过NN预测的速度增加的效果被降低。

本公开内容的一个方面的目的是在进化计算中针对个体的适应度计算被并行化时保持用于适应度计算的本征解的多样性,并且同时减少由于计算时间的波动而导致的等待时间。

问题的解决方案

根据一方面,在通过并行处理基于多个输入来计算多个个体的适应度的进化计算中,算术处理单元包括多个计算单元和确定单元,该确定单元基于由多个计算单元计算的针对第一代中的多个个体的适应度计算的计算完成的预定基准,确定不进化为作为第一代的下一代的第二代的个体的个体。在这种情况下,确定单元确定使不进化为第二代的个体的个体进化为第二代的下一代或第二代的后续代的个体。

本发明的有益效果

根据一个实施方式,当并行处理进化计算中的个体的适应度计算时,可以保持用于适应度计算的本征解的多样性,并且同时可以减少由于计算时间的波动而导致的等待时间。

附图说明

图1是示出根据实施方式1的算术处理单元的配置的功能框图;

图2A是示出对本征解搜索的中止定时控制的图;

图2B是示出对本征解搜索的中止定时控制的评估结果的图;

图3是示出根据实施方式1的对本征解搜索的中止定时控制的示例的图;

图4是示出根据实施方式1的模型生成的图;

图5是示出根据实施方式1的本征解预测的图;

图6是示出根据实施方式1的中止定时控制的评估结果的图;

图7是示出根据实施方式1的模型生成的流程图的示例的图;

图8A是示出根据实施方式1的通过GA进行的结构设计的流程图的示例的图;

图8B是示出根据实施方式1的本征解搜索的流程图的示例的图;

图9是示出根据实施方式2的对本征解搜索的中止定时控制的示例的图;

图10A是示出根据实施方式2的通过GA进行的结构设计的流程图的示例的图;

图10B是示出根据实施方式2的通过GA进行的结构设计的流程图的示例的图;

图11是示出执行算术处理程序的计算机的示例的图;

图12是示出SiO

图13是示出通过GA进行的SiO

图14是示出通过使用NN预测的GA进行的SiO

图15是示出指示通过GA达到的解的参考示例的图;

图16是示出指示通过GA执行的计算的总数目的参考示例的图;

图17是示出当不使用NN预测来执行GA时的等待时间的参考示例的图;以及

图18是示出当通过使用NN预测来执行GA时的等待时间的参考示例的图。

具体实施方式

将参照附图详细描述本文公开的算术处理单元、算术处理程序和算术处理方法的实施方式。根据本公开内容的实施方式,将描述下述情况,在该情况中,要通过进化计算获取光学SAW滤波器的光学信令信道的最佳布置(结构设计),该最佳布置使光学信令信道上的SAW强度最大化并且使SAW强度的偏移量与波长之比(SAW移动距离)最大化。将通过假设进化计算是遗传算法(GA)来描述本公开内容的实施方式。然而,本公开内容不限于所述实施方式。

将参照图17和图18描述当通过使用神经网络(NN)预测以及不使用NN预测并行处理通过GA进行的针对个体的适应度计算时产生的等待时间。NN预测是通过使用NN来预测近似本征解并开始收敛计算以从近似本征解中获取准确本征解的本征解搜索技术。在NN预测中,如果在近似本征解范围内获取本征解失败,则通过对本征解的可能范围的所有点执行收敛计算来获取本征解。在下文中,将在本征解的可能范围的所有点中执行对本征解的搜索称为“整个范围搜索”。在下文中,将在近似本征解的范围中执行对本征解的搜索称为“局部范围搜索”。

在将并行化应用于适应度计算的情况下,个体之间计算结束的时间不同。因此,当针对每一代中的个体的适应度计算被并行化时,直至完成针对所有个体的适应度计算,才可以开始针对下一代的计算。换句话说,例如,针对每一代中的适应度评估的计算时间取决于针对最迟个体的处理。

图17是示出当不使用NN预测来执行GA时的等待时间的参考示例的图。如图17的下部所示,指示了达到针对多个个体的本征解获取的搜索次数。图17中指示的术语“工作物”是指执行算术处理的设备。例如,在多核CPU中,存在与核的数目相等的工作物数目。在多CPU算术处理单元中,存在与核的数目×CPU数目相等的工作物数目。在多节点算术处理单元中,存在与核的数目×CPU数目×节点的数目相等的工作物数目。

从这部分应当理解,直到针对个体的计算结束要采取不同的搜索次数。当适应度计算被并行化时,直至完成针对所有个体的并行化适应度计算,才可以开始针对下一代的计算。因此,从最早完成由工作物2进行的计算的时间到最迟完成由工作物1进行的计算的时间产生等待时间。因为不使用NN预测来执行处理,所以搜索次数集中在800至1200的范围内,如图17的上部所示。因此,达到针对个体的适应度计算的搜索次数的波动小,并且在使计算并行化时产生的等待时间短。

图18是示出当通过使用NN预测来执行GA时的等待时间的参考示例的图。如图18的下部所示,指示了达到针对多个个体的本征解获取的搜索次数。从这部分应当理解,直到针对个体的计算结束要采取不同的搜索次数。换句话说,例如,如果NN预测正确,则尝试(trial)以局部范围搜索结束。因此,搜索次数低。如果预测错误,则执行整个范围搜索。因此,搜索次数高。当适应度计算被并行化时,直至完成针对所有个体的并行化适应度计算,才可以开始针对下一代的计算。因此,从最早完成由工作物2进行的计算的时间到最迟完成由工作物1进行的计算的时间产生等待时间。在NN预测中,达到适应度计算的搜索次数在NN预测为正确的情况与预测为错误的情况之间波动。因此,并行化中的等待时间长。如图18的上部所示,搜索次数从200至1200波动,其中峰值约为300。因此,达到针对个体的适应度计算的搜索次数的波动大,并且在使计算并行化时产生的等待时间长。换句话说,例如,也可以说,通过NN预测的速度增加的效果被降低。

因此,当并行处理通过GA进行的针对个体的适应度计算时,每一代中适应度评估的速度可能不会增加。

根据以下实施方式,将描述下述算术处理单元,该算术处理单元可以在并行处理通过GA进行的针对个体的适应度计算时保留用于适应度计算的多种本征解,并且同时减少由于计算时间的波动而导致的等待时间。

[实施方式1]

[算术处理单元的配置]

图1是示出根据实施方式1的算术处理单元的配置的功能框图。为了减少在通过并行化基于多个输入来计算多个个体的适应度的进化计算中由于计算时间之间的波动而导致的等待时间,图1所示的算术处理单元1执行以下处理。算术处理单元1使在当前处理的代中具有长计算时间的个体加入到一个后续代。

为了减少由于计算时间的波动而导致的等待时间,也可以考虑中止针对当前处理的代中具有长计算时间的个体的本征解搜索。将参照图2A和图2B描述对本征解搜索的中止定时控制。图2A是示出对本征解搜索的中止定时控制的图。图2B是示出对本征解搜索的中止定时控制的评估结果的图。

图2A的左侧部分示出了在不中止本征解并且使用NN预测的情况下针对个体的本征解搜索的搜索次数和等待时间。在第一代中由工作物3进行的搜索次数为800,这是最迟的;而在第二代中由工作物4进行的搜索次数为1050,这是最迟的。从实验中发现,根据使用NN预测的GA,具有超过500的搜索次数的个体例如对应于全部个体的10%或更低。

因此,如图2A的右侧部分所示,例如,将用于中止本征解搜索的基准设置为500,并且中止超过500的针对个体的本征解搜索,并且将处理转移至下一代。因此,可以减少由于并行化而导致的等待时间。算术处理单元通过确定个体的适应度为最低来对被中止的个体执行适应度评估。

图2B示出了作为中止基准的搜索次数以及通过GA达到的本征解(达到的解)的质量关系的评估结果。图2B的左侧部分示出了具有指示要中止的本征解搜索次数的X轴和指示达到的解的超体积的Y轴的曲线图。当X轴指示作为一个适应度的在光学信令信道上的SAW强度A

如图2B的右下部分所示,当要中止的本征解搜索次数为400时,达到的解的多样性降低。换句话说,例如,解分布在向右方向(A

因此,为了减少由于计算时间的波动而导致的等待时间并保持本征解的多样性,算术处理单元1使针对具有超过阈值的本征解搜索的搜索次数的个体的搜索加入到下一代。

图3是示出根据实施方式1的对本征解搜索的中止定时控制的示例的图。如图3所示,算术处理单元1在处理的代中中止搜索具有超过阈值的本征解搜索的搜索次数的个体,并且使个体加入到一个后续代。例如,当阈值为500时,算术处理单元1对当搜索次数超过500时已完成搜索的个体执行适应度评估,使个体进化,并将处理转移至下一代。算术处理单元1使具有超过500的搜索次数的个体加入到下一代。在进化计算中,认为在一个后续代中执行进化处理(选择、交叉、变异等)影响较小。

返回参照图1,算术处理单元1包括控制单元10和存储单元20。

控制单元10对应于电子电路,诸如中央处理单元(CPU)。控制单元10具有用于存储定义各种处理过程的程序和控制数据的内部存储器,并且使用程序和数据执行各种处理。控制单元10包括输入单元11、高性能计算(HPC)计算单元组12、性能评估单元13、进化计算单元14、输出单元15和进化控制单元16。

存储单元20是例如半导体存储装置诸如随机存取存储器(RAM)或闪存存储器,或者是诸如硬盘或光盘的存储装置。存储单元20具有输入/输出存储单元21和学习模型22。

输入/输出存储单元21关联地存储过去的输入值和输出值(适应度)以及本征解。输入/输出存储单元21通过将在下面描述的输入/输出保存单元161进行存储。术语“输入值”在此是指与基因对应的结构。术语“基因”在此是指通过将在通过将光学SAW滤波器的表面划分成均具有预定长度的区域而获得的区域中的SiO

学习模型22是用于通过使用过去的输入值和与该输入值对应的本征解来获取与新的输入值对应的本征解的范围的学习的结果模型。学习模型22通过使用例如神经网络(NN)的技术进行学习。学习模型22由将在下面描述的模型生成单元162生成。

输入单元11将要被设计并且要被用于生成学习模型22的输入值输出至将在下面描述的HPC计算单元121和将在下面描述的输入/输出保存单元161。输入单元11将要被设计并且要被用于通过使用学习模型22来预测本征解的输入值输出至将在下面描述的本征解预测单元163。

HPC计算单元组12具有多个HPC计算单元121。在下文中,将描述一个HPC计算单元121。

HPC计算单元121接收预定代的要被设计的输入值,并获取满足针对该输入值的本征解条件的本征解。换句话说,例如,HPC计算单元121从本征解的整个可能范围中搜索满足针对输入值的本征解条件的本征解。例如,当输入表达式(2)的本征解条件中的A

另外,HPC计算单元121基于本征解计算SAW强度分布(本征行为)作为目标函数。例如,HPC计算单元121基于表达式(1)计算与本征解对应的SAW强度分布。HPC计算单元121用本征解替换表达式(1)中的Neff以计算与该本征解对应的SAW强度分布。HPC计算单元121通过使用针对输入值的SAW强度分布来计算针对输入值的SAW强度作为一个适应度。另外,HPC计算单元121针对输入值计算SAW移动距离的波长依赖性(La/Lb)的值作为一个适应度。HPC计算单元121将针对输入值的适应度输出至将在下面描述的性能评估单元13和输出单元15。

当搜索本征解的计算未完成时,并且如果HPC计算单元121从将在下面描述的中止定时控制单元164接收到中止定时的通知,HPC计算单元121继续搜索本征解的计算。当搜索本征解的计算完成时,HPC计算单元121基于本征解计算SAW强度分布(本征行为)作为目标函数。HPC计算单元121通过使用针对输入值的SAW强度分布来计算针对输入值的SAW强度作为一个适应度。另外,HPC计算单元121针对输入值计算SAW移动距离的波长依赖性(La/Lb)的值作为一个适应度。HPC计算单元121将针对输入值的适应度输出至结果保存单元165。这是为了保存不是作为生成输入值时的代的结果而是作为该代的下一代的结果的适应度。

性能评估单元13基于每个输入值的适应度来评估每个输入值的性能。例如,如果性能评估单元13从将在下面描述的中止定时控制单元164接收到中止定时的通知,则性能评估单元13通过使用从HPC计算单元121输出的每个输入值的适应度和保存在将在下面描述的结果保存单元165中的每个输入值的适应度来评估每个输入值的性能。换句话说,例如,性能评估单元13利用已完成的本征解搜索和针对先前代保存的性能结果来共同评估当前代的输入值的性能结果。性能评估单元13基于输入值的性能的评估结果,从多个输入值中选择适应的输入值或要保留的输入值。

进化计算单元14使所选择的输入值交叉并改变经交叉的输入值以生成下一代的输入值。进化计算单元14将下一代的输入值输出至输入单元11。

输出单元15将从HPC计算单元121输出和通过整个范围搜索而搜索到的针对输入值的本征解和适应度输出至将在下面描述的输入/输出保存单元161。

进化控制单元16包括输入/输出保存单元161、模型生成单元162、本征解预测单元163、中止定时控制单元164和结果保存单元165。

输入/输出保存单元161将通过整个范围搜索而搜索到的针对输入值的本征解和适应度保存在输入/输出存储单元21中。

模型生成单元162生成学习模型22,该学习模型22基于通过整个范围搜索而搜索到的针对输入值的本征解来预测满足针对输入值的本征解条件的本征解存在的范围。例如,模型生成单元162使神经网络(NN)学习存储在输入/输出存储单元21中和通过整个范围搜索而搜索到的输入值和本征解,并且生成预测针对输入值的本征解的范围的学习模型22。模型生成单元162可以通过使用针对从第一代至第m代的输入值的本征解来生成学习模型22。第m代是例如第25代。

将参照图4描述通过模型生成单元162进行的模型生成。图4是示出根据实施方式1的模型生成的图。如图4所示,模型生成单元162使NN学习输入值x

返回参照图1,本征解预测单元163使用学习模型22来预测针对输入值的本征解存在的范围(解候选范围)。本征解预测单元163在预测的本征解范围内搜索满足针对输入值的本征解条件的针对输入值的本征解。

例如,当输入表达式(2)的本征解条件中的A

如果本征解预测成功,则本征解预测单元163将本征解连同输入值一起输出至HPC计算单元121。这是为了使HPC计算单元121计算针对输入值的本征解的SAW强度分布(本征行为)以及计算针对输入值的适应度。另一方面,如果本征解预测失败,则本征解预测单元163将由预测失败导致的本征解的输入值输出至HPC计算单元121。这是为了使HPC计算单元121通过整个范围搜索来获取针对输入值的本征解。

[本征解预测的描述]

将参照图5描述通过本征解预测单元163进行的本征解预测。图5是示出根据实施方式1的本征解预测的图。在图5中,将解候选范围预先划分为通过将1000个点除以20获得的50个点的20个范围。

首先,通过使用图5的左侧部分所示的学习模型22,本征解预测单元163预测针对输入值x

接下来,如图5的右侧部分所示,本征解预测单元163在预测的解候选范围内搜索满足针对输入值的本征解条件的针对输入值的本征解。在此假设预测的解候选范围是“5”。在由解候选范围“5”指示的范围内,当输入表达式(2)的本征解条件中的A

如果利用解候选范围内的z值不能使函数h(z)结果为零,或者如果本征解预测失败,则本征解预测单元163可以使HPC计算单元121通过整个范围搜索来获取本征解。

中止定时控制单元164控制用于中止由多个HPC计算单元121计算的针对第一代中的多个输入值的本征解搜索的定时。例如,中止定时控制单元164基于本征解搜索的搜索次数来控制用于中止第一代中的本征解搜索的定时。

作为示例,中止定时控制单元164基于针对第一代中的多个输入值的本征解搜索的搜索次数,确定不进化为作为第一代的下一代的第二代的输入值的输入值。更具体地,例如,中止定时控制单元164将第一代的多个输入值中的在本征解搜索的搜索次数超过本征解搜索的搜索次数的基准值时尚未完成本征解搜索的输入值确定为不进化为第二代的输入值的输入值。中止定时控制单元164确定将输入值不进化为第二代的输入值而是进化为第二代的后续代的输入值。中止定时控制单元164向正在执行针对所确定的输入值的本征解搜索的HPC计算单元121通知现在是中止定时。中止定时控制单元164向性能评估单元13通知现在是中止定时,以对第一代的多个输入值中的在本征解搜索的搜索次数超过本征解搜索的搜索次数的基准值时已经完成本征解搜索的输入值执行性能评估。换句话说,例如,也可以说,中止定时控制单元164控制进化的定时。

已经描述了中止定时控制单元164基于本征解搜索的搜索次数来控制用于中止本征解搜索的定时,实施方式不限于此。中止定时控制单元164可以基于本征解搜索的计算时间而不是本征解搜索的搜索次数来控制用于中止本征解搜索的定时。中止定时控制单元164可以基于已经完成本征解搜索的个体的数目(输入值的数目)来控制用于中止本征解搜索的定时。中止定时控制单元164可以基于已经完成本征解搜索的执行的HPC计算单元121的数目的比例来控制用于中止本征解搜索的定时。

结果保存单元165保存指示输入值的适应度的结果。换句话说,例如,结果保存单元165保存针对当前执行处理的代的一个先前代的输入值的结果。

图6是示出根据实施方式1的中止定时控制的评估结果的图。图6的左侧部分示出了具有指示要中止的本征解搜索次数的X轴和指示通过进化计算达到的本征解(达到的解)的超体积的Y轴的曲线图。当X轴指示作为一个适应度的在光学信令信道上的SAW强度A

如图6的左侧部分所示,即使当要中止的本征解搜索次数为400时,超体积也具有与在要中止的本征解搜索次数为1200的情况的达到度基本相等的达到度。如图6的右侧部分所示,即使当要中止的本征解搜索次数为400时,也可以说,与不中止本征解搜索的情况相比,达到的解的多样性被保持。换句话说,例如,当执行根据实施方式1的中止定时控制时,与不中止本征解搜索的情况相比,如图6的右下部分所示的解分布在向上方向(La/Lb增加的方向)上的进化可以被保持而不会中止。推断这是因为即使搜索次数高的个体也不会被移除,而是被用于下一代的进化中。因此推断质量(超体积)可以被保持。

[模型生成的流程图]

图7是示出根据实施方式1的用于模型生成的流程图的示例的图。代数k的初始值假设为“1”。

如图7所示,输入单元11输入要被设计的多个输入值“x

HPC计算单元121针对每个输入值“x

HPC计算单元121确定每个输入值的本征解和本征行为(步骤S13)。例如,HPC计算单元121针对每个输入值将作为结果的等式h(z)被求解为零的z的值确定为本征解。基于表达式(1),HPC计算单元121计算与所确定的本征解对应的SAW强度分布作为本征行为。HPC计算单元121用该本征解替换表达式(1)中的Neff以计算与该本征解对应的SAW强度分布。

输入/输出保存单元161将针对输入值的本征解累积地存储在输入/输出存储单元21中(步骤S14)。

HPC计算单元121计算输入值的性能(步骤S15)。例如,HPC计算单元121根据针对输入值的SAW强度分布计算与由输入值指示的每个结构的光学信令信道的位置对应的SAW强度作为一个适应度。另外,HPC计算单元121针对输入值计算SAW移动距离的波长依赖性(La/Lb)的值作为一个适应度。性能评估单元13基于每个输入值的适应度来评估输入值的性能(步骤S16)。

性能评估单元13确定当前代数是否超过阈值(步骤S17)。如果确定当前代数未超过阈值(步骤S17中为否),则进化计算单元14基于评估结果从当前输入值“x

进化计算单元14生成下一代的输入值“x

另一方面,如果确定当前代数超过阈值(步骤S17中为是),则模型生成单元162生成学习模型22,该学习模型22根据针对所存储的输入值的本征解预测针对输入值的本征解存在的范围(步骤S20)。模型生成处理结束。

[通过GA进行的结构设计的流程图]

图8A是示出根据实施方式1的通过GA进行的结构设计的流程图的示例的图。代数k的初始值假设为用于模型生成的阈值+1。

如图8A所示,输入单元11输入要被设计的多个输入值“x

HPC计算单元121并行处理针对输入值的本征操作条件的计算,其中并行计算的数目等于输入值的数目(步骤S22)。换句话说,例如,HPC计算单元121并行处理针对输入值的本征解搜索,其中并行本征解搜索的次数等于个体的数目。本征解搜索的流程图将在下面描述。

中止定时控制单元164对已完成的用于计算操作条件的计算的数目进行计数(步骤S23)。中止定时控制单元164确定是否超过了用于计算完成的基准(步骤S24)。例如,中止定时控制单元164通过将本征解搜索的搜索次数处理为用于计算完成的基准来确定本征解搜索的搜索次数是否超过基准值。中止定时控制单元164可以使用本征解搜索的计算时间而不是本征解搜索的搜索次数来作为用于计算完成的基准。中止定时控制单元164可以使用已经完成本征解搜索的个体的数目(输入值的数目)作为用于计算完成的基准。中止定时控制单元164可以使用已经完成本征解搜索的执行的HPC计算单元121的数目的比例作为用于计算完成的基准。

如果确定未超过用于计算完成的基准(步骤S24中为否),则中止定时控制单元164进一步进行至步骤S23以对已完成的用于计算操作条件的计算的数目进行计数。

另一方面,如果确定超过了用于计算完成的基准(步骤S24中为是),则中止定时控制单元164确定是否存在尚未完成操作条件的计算的输入值(步骤S25)。如果确定存在尚未完成操作条件的计算的输入值(步骤S25中为是),则中止定时控制单元164向HPC计算单元121通知现在是中止定时。已经接收到中止定时的通知的HPC计算单元121继续针对输入值的本征操作条件的计算(步骤S26)。

HPC计算单元121计算已经完成计算的个体的输入值的性能(步骤S27)。例如,HPC计算单元121根据针对每个输入值的SAW强度分布计算与由每个输入值指示的结构的光学信令信道的位置对应的SAW强度作为一个适应度。另外,HPC计算单元121针对每个输入值计算SAW移动距离的波长依赖性(La/Lb)的值作为一个适应度。HPC计算单元121将计算出的适应度存储在结果保存单元165中(步骤S28)。

HPC计算单元121确定是否已经接收到针对该代的选择完成的通知(步骤S29)。如果确定尚未接收到针对该代的选择完成的通知(步骤S29中为否),则HPC计算单元121重复确定处理,直至接收到针对该代的选择完成的通知。

另一方面,如果确定已经接收到针对该代的选择完成的通知(步骤S29中为是),则HPC计算单元121进行至步骤S31以评估性能。

如果在步骤S25中确定不存在尚未完成操作条件的计算的输入值(步骤S25中为否),则HPC计算单元121计算已经完成计算的个体的每个输入值的性能(步骤S30)。例如,HPC计算单元121根据针对每个输入值的SAW强度分布计算与由每个输入值指示的结构的光学信令信道的位置对应的SAW强度作为一个适应度。另外,HPC计算单元121针对每个输入值计算SAW移动距离的波长依赖性(La/Lb)的值作为一个适应度。HPC计算单元121进行至步骤S31以评估性能。

在步骤S31中,性能评估单元13基于由HPC计算单元121计算的针对每个输入值的适应度和由结果保存单元165存储的针对每个输入值的适应度来评估每个输入值的性能(步骤S31)。

性能评估单元13确定是否满足结束条件(步骤S32)。如果确定不满足结束条件(步骤S32中为否),则进化计算单元14基于评估结果从当前输入值“x

进化计算单元14生成下一代的输入值“x

另一方面,如果确定满足结束条件(步骤S32中为是),则性能评估单元13基于针对每个输入值的性能评估结果选择最佳输入值(步骤S35)。GA处理结束。

[本征解搜索的流程图]

图8B是示出根据实施方式1的本征解搜索的流程图的示例的图。

如图8B所示,通过使用学习模型22,本征解预测单元163估计针对输入值的本征解的解候选范围(步骤S41)。本征解预测单元163在解候选范围中预测本征解(步骤S42)。例如,当输入表达式(2)中的本征解条件中的A

本征解预测单元163确定本征解预测是否成功(步骤S43)。如果确定本征解预测已经成功(步骤S43中为是),则本征解预测单元163进行至步骤S45。

另一方面,如果确定本征解预测不成功(步骤S43中为否),则HPC计算单元121计算针对输入值“x

HPC计算单元121确定针对每个输入值的本征解和本征行为(步骤S45)。例如,HPC计算单元121针对每个输入值将作为结果的等式h(z)被求解为零的z的值确定为本征解。基于表达式(1),HPC计算单元121计算与所确定的本征解对应的SAW强度分布作为本征行为。HPC计算单元121用该本征解替换表达式(1)中的Neff以计算与该本征解对应的SAW强度分布。

[实施方式1的效果]

根据实施方式1,在通过并行处理基于多个输入来计算多个个体的适应度的进化计算中,算术处理单元1执行以下处理。算术处理单元1基于由多个HPC计算单元121计算的针对第一代中的多个个体(输入值)的适应度计算(性能计算)的计算完成的预定基准,确定不进化为作为第一代的下一代的第二代的个体的个体。算术处理单元1确定使不进化为第二代的个体的个体进化为第二代的下一代或第二代的后续代的个体。根据该配置,算术处理单元1可以在并行处理针对进化计算中的个体的适应度计算时保持用于适应度计算的本征解的多样性,并且同时减少由于计算时间的波动而导致的等待时间。

根据上述实施方式1,算术处理单元1基于针对第一代中的多个个体的适应度计算中的搜索本征解的搜索次数,确定不进化为作为第一代的下一代的第二代的个体的个体。算术处理单元1使针对所确定的个体的本征解的搜索继续,并确定使该个体进化为第二代的下一代或第二代的后续代的个体。根据该配置,算术处理单元1使用用于搜索本征解的搜索次数作为用于确定继续本征解搜索并且不进化为第二代的个体的个体的定时,使得可以保持本征解的多样性,并且同时可以减少由于计算时间的波动而导致的等待时间。

根据上述实施方式1,算术处理单元1基于针对第一代中的多个个体的适应度计算中的搜索本征解的计算时间,确定不进化为作为第一代的下一代的第二代的个体的个体。算术处理单元1使针对所确定的个体的本征解的搜索继续,并确定使个体进化为第二代的下一代或第二代的后续代的个体。根据该配置,算术处理单元1使用用于搜索本征解的计算时间作为用于确定继续本征解搜索并且不进化为第二代的个体的个体的定时,使得可以保持本征解的多样性,并且同时可以减少由于计算时间的波动而导致的等待时间。

根据上述实施方式1,算术处理单元1基于在针对第一代中的多个个体的适应度计算中的已完成个体的数目,确定不进化为作为第一代的下一代的第二代的个体的个体。算术处理单元1使针对所确定的个体的本征解的搜索继续,并确定使个体进化为第二代的下一代或第二代的后续代的个体。根据该配置,算术处理单元1使用已经完成计算的个体的数目作为用于确定继续本征解搜索并且不进化为第二代的个体的个体的定时,使得可以保持本征解的多样性,并且同时可以减少由于计算时间的波动而导致的等待时间。

[实施方式2]

根据实施方式1,已经描述了当一代的个体数目低于执行算术处理的HPC计算单元121的数目时,由算术处理单元1执行中止定时控制处理。然而,当一代的个体数目高于执行算术处理的HPC计算单元121的数目时,可以由算术处理单元1执行中止定时控制处理。

因此,在实施方式2中,将描述当一代的个体数目高于执行算术处理的HPC计算单元121的数目时由算术处理单元1执行的中止定时控制处理。

图9是示出根据实施方式2的对本征解搜索的中止定时控制的示例的图。如图9所示,当一代的个体数目高于HPC计算单元121的数目时,算术处理单元1将个体分配至所有HPC计算单元121,使HPC计算单元121执行针对个体的计算,并且使已完成计算的HPC计算单元121依次执行针对尚未执行计算的个体的计算。如果在该代的执行中超过了用于计算完成的基准,则算术处理单元1中止搜索在该代中的尚未完成本征解搜索的计算的个体,并且使个体加入到一个后续代。用于计算完成的基准可以是一代的计算时间、已经完成本征解搜索的个体的数目(输入值的数目)或者已经完成本征解搜索的HPC计算单元121的数目的比例。

例如,在用于计算完成的基准是一代的计算时间的情况下,算术处理单元1在一代的计算时间超过基准值时对已完成搜索的个体执行适应度评估,使个体进化,并将处理转移至下一代。算术处理单元1使在一代的计算时间超过基准值时尚未完成搜索的个体加入至下一代。在进化计算中,认为在一个后续代数中执行进化处理(选择、交叉、变异等)影响较小。

[通过GA进行的结构设计的流程图]

图10A至图10B是示出根据实施方式2的通过GA进行的结构设计的流程图的示例的图。代数k的初始值假设为用于模型生成的阈值+1。

如图10A所示,输入单元11输入要被设计的多个输入值“x

HPC计算单元121并行处理针对输入值的本征操作条件的计算,其中并行计算的数目等于输入值的数目(步骤S52)。换句话说,例如,HPC计算单元121并行处理针对输入值的本征解搜索,其中并行本征解搜索的次数等于个体的数目。因为已经参照图8B描述了本征解搜索的流程图,所以将省略该描述。

每个HPC计算单元121确定是否存在尚未执行计算的个体(步骤S53)。如果确定存在尚未执行计算的个体(步骤S53中为是),则HPC计算单元121进行至步骤S52,以对尚未执行计算的个体执行处理。另一方面,如果确定不存在尚未执行计算的个体(步骤S53中为否),则HPC计算单元121等待。

中止定时控制单元164对已完成的用于计算操作条件的计算的数目进行计数(步骤S54)。中止定时控制单元164确定是否超过了用于计算完成的基准(步骤S55)。例如,中止定时控制单元164通过使用本征解搜索的搜索次数作为用于计算完成的基准来确定一代的计算时间是否超过基准值。中止定时控制单元164可以使用已经完成本征解搜索的个体的数目(输入值的数目)而不是一代的计算时间作为用于计算完成的基准。中止定时控制单元164可以使用已经完成本征解搜索的HPC计算单元121的数目的比例作为用于计算完成的基准。

如果确定未超过用于计算完成的基准(步骤S55中为否),则中止定时控制单元164进一步进行至步骤S54以对已完成的用于计算操作条件的计算的数目进行计数。

另一方面,如果确定超过了用于计算完成的基准(步骤S55中为是),则中止定时控制单元164确定是否存在尚未完成操作条件的计算的输入值(步骤S56)。如果确定存在尚未完成操作条件的计算的输入值(步骤S56中为是),则中止定时控制单元164向对应的HPC计算单元121通知现在是中止定时。接收到中止定时的通知的HPC计算单元121继续针对输入值的本征操作条件的计算(步骤S57)。

HPC计算单元121计算已经完成计算的个体的输入值的性能(步骤S58)。例如,HPC计算单元121根据针对每个输入值的SAW强度分布计算与由每个输入值指示的结构的光学信令信道的位置对应的SAW强度作为一个适应度。另外,HPC计算单元121针对每个输入值计算SAW移动距离的波长依赖性(La/Lb)的值作为一个适应度。HPC计算单元121将计算出的适应度存储在结果保存单元165中(步骤S59)。

HPC计算单元121确定是否已经接收到针对该代的选择完成的通知(步骤S60)。如果确定尚未接收到针对该代的选择完成的通知(步骤S60中为否),则HPC计算单元121重复确定处理,直至接收到针对该代的选择完成的通知。

另一方面,如果确定已经接收到针对该代的选择完成的通知(步骤S60中为是),则HPC计算单元121进行至步骤S62以评估性能。

如果在步骤S56中确定不存在尚未完成操作条件的计算的输入值(步骤S56中为否),则HPC计算单元121计算已经完成计算的个体的每个输入值的性能(步骤S61)。例如,HPC计算单元121根据针对每个输入值的SAW强度分布计算与由每个输入值指示的结构的光学信令信道的位置对应的SAW强度作为一个适应度。另外,HPC计算单元121针对每个输入值计算SAW移动距离的波长依赖性(La/Lb)的值作为一个适应度。HPC计算单元121进行至步骤S62以评估性能。

在步骤S62中,性能评估单元13基于由HPC计算单元121计算的针对每个输入值的适应度和由结果保存单元165存储的针对每个输入值的适应度来评估每个输入值的性能(步骤S62)。

性能评估单元13确定是否满足结束条件(步骤S63)。如果确定不满足结束条件(步骤S63中为否),则进化计算单元14基于评估结果从当前输入值“x

进化计算单元14生成下一代的输入值“x

另一方面,如果确定满足结束条件(步骤S63中为是),则性能评估单元13基于针对每个输入值的性能评估结果选择最佳输入值(步骤S66)。GA处理结束。

[实施方式2的效果]

根据上述实施方式2,当第一代中的多个个体的数目高于HPC计算单元121的数目时,每个HPC计算单元121在完成针对一个个体的适应度计算之后,执行针对尚未执行计算的个体的适应度计算。中止定时控制单元164基于由多个HPC计算单元121计算的针对第一代中的多个个体的适应度计算的计算完成的预定基准,确定不进化为作为第一代的下一代的第二代的个体的个体。根据该配置,算术处理单元1即使在第一代中的多个个体的数目高于用于并行计算的计算单元的数目时也可以保持用于适应度计算的本征解的多样性,并且同时减少由于计算时间的波动而导致的等待时间。

[其他]

已经描述了算术处理单元1基于通过整个范围搜索而搜索到的针对从第一代到第m代的输入值的本征解来生成预测针对输入值的本征解存在的范围的学习模型22。算术处理单元1通过使用生成的学习模型22根据第(m+1)代的输入值来预测针对该输入值的本征解的解候选范围,并执行从解候选范围中搜索本征解的局部范围搜索。然而,算术处理单元1不限于此,而是可以通过还在第m代及后续代中继续学习来更新学习模型22。算术处理单元1可以根据将对其执行局部范围搜索的代来更新学习模型22。例如,算术处理单元1可以更新学习模型22,使得模型使用在将对其执行局部范围搜索的代紧之前的若干个代。

作为示例,已经参照通过使用学习模型预测针对输入值的本征解存在的区域来获取本征解的技术描述了算术处理单元1。然而,不限于此,获取本征解的技术也可应用于执行整个范围搜索的过去的技术的进化计算。

在附图中示出的算术处理单元1的部件不必一定如附图所示地物理地配置。换句话说,例如,算术处理单元1的分布和集成的具体形式不限于附图中所示的形式,而是其全部或一部分可以被配置成根据各种负载、使用状态等功能性地或物理地分布或集成在给定的单元中。例如,输出单元15和输入/输出保存单元161可以集成为一个单元。HPC计算单元121可以被划分为通过整个范围搜索来搜索本征解的计算单元、基于本征解计算目标函数的单元和基于目标函数计算针对输入值的适应度的计算单元。存储单元20可以经由网络作为算术处理单元1的外部装置耦接。

上述实施方式中描述的各种处理可以作为执行预先准备的程序的计算机诸如个人计算机或工作站的结果来实现。在下文中,将描述执行实现与图1中示出的算术处理单元1的功能相同的功能的算术处理程序的计算机的示例。图11是示出执行算术处理程序的计算机的示例的图。

如图11所示,计算机200包括执行各种算术处理的CPU 203、接收来自用户的数据的输入的输入装置215以及控制显示装置209的显示控制单元207。计算机200还包括从存储介质读取程序等的驱动装置213以及经由网络与其他计算机交换数据的通信控制单元217。计算机200还包括暂时存储各种信息的存储器201以及硬盘驱动器(HDD)205。存储器201、CPU 203、HDD 205、显示控制单元207、驱动装置213、输入装置215和通信控制单元217经由总线219彼此耦接。

驱动装置213是例如用于可移动磁盘210的装置。HDD 205存储算术处理程序205a和算术处理相关信息205b。

CPU 203读取算术处理程序205a、在存储器201中展开算术处理程序205a、并且作为处理来执行算术处理程序205a。这样的处理对应于算术处理单元1的相应功能单元。算术处理相关信息205b对应于输入/输出存储单元21和学习模型22。例如,可移动磁盘210存储关于算术处理程序205a等的各种信息。

算术处理程序205a可能不一定必须从一开始被存储在HDD 205中。例如,算术处理程序205a可以存储在插入计算机200的“便携式物理介质”例如软盘(FD)、致密盘只读存储器(CD-ROM)、数字多功能盘(DVD)、磁光盘或者集成电路(IC)卡中。计算机200可以通过从便携式物理介质中读取算术处理程序205a来执行算术处理程序205a。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号