CN117634597A - 存储介质、数据处理设备和数据处理方法 - Google Patents
存储介质、数据处理设备和数据处理方法 Download PDFInfo
- Publication number
- CN117634597A CN117634597A CN202310483899.6A CN202310483899A CN117634597A CN 117634597 A CN117634597 A CN 117634597A CN 202310483899 A CN202310483899 A CN 202310483899A CN 117634597 A CN117634597 A CN 117634597A
- Authority
- CN
- China
- Prior art keywords
- value
- state
- replica
- replica circuits
- minimum
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 83
- 238000003672 processing method Methods 0.000 title claims abstract description 7
- 238000000034 method Methods 0.000 claims abstract description 76
- 230000008569 process Effects 0.000 claims abstract description 50
- 238000005457 optimization Methods 0.000 claims abstract description 33
- 230000008859 change Effects 0.000 claims description 11
- 230000014509 gene expression Effects 0.000 description 29
- 238000005259 measurement Methods 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- -1 isooctyl Chemical group 0.000 description 10
- 230000007704 transition Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000015654 memory Effects 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- NHTMVDHEPJAVLT-UHFFFAOYSA-N Isooctane Chemical compound CC(C)CC(C)(C)C NHTMVDHEPJAVLT-UHFFFAOYSA-N 0.000 description 1
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- JVSWJIKNEAIKJW-UHFFFAOYSA-N dimethyl-hexane Natural products CCCCCC(C)C JVSWJIKNEAIKJW-UHFFFAOYSA-N 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000005283 ground state Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000005496 tempering Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/60—Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Operations Research (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Computational Linguistics (AREA)
- Feedback Control In General (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开内容涉及存储介质、数据处理设备和数据处理方法。存储介质,其存储有使至少一个计算机执行处理的数据处理程序,该处理包括:针对多个副本电路中的每个副本电路,获取多个副本电路中的每个副本电路在搜索优化问题的解时从特定时段开始时的第一状态到变化最大的第二状态的汉明距离;获取多个副本电路中的每个副本电路中在特定时段中的距离中的最小值;基于最小值与第一阈值之间的比较来改变在多个副本电路中的每个副本电路中设置的多个温度值中的最小温度值的大小;在多个副本电路中的每个副本电路中设置改变后的最小温度值;以及使多个副本电路搜索优化问题的解。
Description
技术领域
本文所讨论的实施方式涉及存储介质、数据处理设备和数据处理方法。
背景技术
作为对诺依曼型(Neumann-type)计算机不能很好处理的大规模离散优化问题进行计算的设备,存在使用伊辛型评估函数(也称为能量函数等)的伊辛设备(也称为玻尔兹曼(Boltzmann)机)。
在通过伊辛设备进行的计算中,使用伊辛模型来代替计算目标的问题,该伊辛模型是表示磁体的自旋行为的模型。通过使用马尔可夫链蒙特卡罗方法来执行对伊辛模型的使伊辛型评估函数值(对应于伊辛模型中的能量)最小化的状态的搜索。如下状态是最优解:评估函数的值是局部最小值中的最小值。通过改变评估函数的符号,伊辛设备还可以搜索评估函数的值是局部最大的状态。
在下文中,马尔可夫链蒙特卡罗(MCMC)方法简称为MCMC方法。通过MCMC方法进行的处理可以被称为MCMC处理。例如,在MCMC处理中,以通过Metropolis(梅特罗波利斯)方法或Gibbs(吉布斯)方法限定的状态转换的接受概率来接受状态转换。
作为MCMC方法的一种类型,存在副本交换方法(也称为并行回火方法等)。根据副本交换方法,使用多个温度值的MCMC处理由伊辛模型的多个副本彼此独立地执行。对于每个特定次数的试验,将在每个MCMC处理中获得的能量彼此进行比较,并且以适当的概率交换两个温度值的状态。与温度值逐渐降低的模拟退火方法相比,副本交换方法减少了陷入局部解中的可能性,并且使得能够对整个解空间(搜索空间)进行有效搜索。
在相关技术中,已经提出了下述方法:通过使用指示根据温度变化的能量变化程度的比热来调节温度值之间的间隔,以增加副本交换方法中交换概率的均匀性。已经提出了用于基于与通过MCMC处理采样的状态对应的参数的重心来调节副本的温度的方法。
公开了作为相关技术的日本公开特许公报第2021-43503号和日本公开特许公报第2020-181461号。
发明内容
技术问题
在通过使用副本交换方法解决优化问题时,在未对多个温度值中的最小温度值(在下文中,也可以称为最小温度)进行适当地设置的情况下,直到获得解为止的时间可能非常长。例如,当最小温度太低时,伴随能量增加的状态转换几乎不会发生,并且一旦获得局部解,就有可能无法从局部解中逃离。
然而,为了确定适当的最小温度,对最小温度重复多次调节以搜索最佳值,并且因此存在需要花费时间来调节最小温度的问题。
在一个方面,本公开内容的目的是提供能够使在副本交换方法中使用的最小温度的调节时间缩短的温度调节程序、数据处理设备和数据处理方法。
发明的有益效果
在本公开内容的一个方面,可以使在副本交换方法中使用的最小温度的调节时间缩短。
问题的解决方案
根据实施方式的一方面,一种非暂态计算机可读存储介质,其存储有使至少一个计算机执行处理的数据处理程序,该处理包括:针对基于通过对优化问题进行转换获得的伊辛模型通过副本交换方法来搜索优化问题的解的多个副本电路中的每个副本电路,获取多个副本电路中的每个副本电路在搜索优化问题的解时在特定时段中从第一状态到第二状态的汉明距离,第一状态是在特定时段的开始时的状态,第二状态是在特定时段中的相对于第一状态变化最大的状态;获取多个副本电路中的每个副本电路中在特定时段中的距离中的最小值;基于最小值与第一阈值之间的比较来改变在多个副本电路中的每个副本电路中设置的多个温度值中的最小温度值的大小;在多个副本电路中的每个副本电路中设置改变后的最小温度值;以及使多个副本电路基于所设置的最小温度值来搜索优化问题的解。
附图说明
图1是示出根据第一实施方式的数据处理设备的示例的图;
图2是示出最小温度的调节过程的流程图;
图3是示出根据第二实施方式的数据处理设备的示例的图;
图4是示出温度调节单元的示例的图;
图5是示出温度调节单元的另一示例的图;
图6是示出最小温度的调节过程的流程的示例的流程图;以及
图7是示出作为数据处理设备的示例的计算机的硬件的示例的图。
具体实施方式
在下文中,将参照附图描述本公开内容的实施方式。
(第一实施方式)
图1是示出根据第一实施方式的数据处理设备的示例的图。
数据处理设备10包括存储单元11、搜索单元12和处理单元13。
例如,存储单元11是作为诸如动态随机存取存储器(DRAM)的电子电路的易失性存储设备,或者是作为诸如硬盘驱动器(HDD)或闪存的电子电路的非易失性存储设备。存储单元11可以包括诸如静态随机存取存储器(SRAM)寄存器的电子电路。
例如,存储单元11存储关于要计算的优化问题、计算条件等的信息。存储单元11中可以存储诸如温度调节程序的各种程序。
例如,搜索单元12可以通过使用诸如专用集成电路(ASIC)或现场可编程门阵列(FPGA)的电子电路来实现。搜索单元12可以通过软件处理来实现,在软件处理中,作为诸如中央处理单元(CPU)、图形处理单元(GPU)或数字信号处理器(DSP)的硬件的处理器执行程序。
基于通过将要计算的优化问题进行转换获得的伊辛模型,搜索单元12通过使用多个副本电路的副本交换方法来搜索优化问题的解,所述多个副本电路中的每一个对伊辛模型的副本执行处理。例如,伊辛模型的能量最小的状态(基态)是最优解。
伊辛模型的能量通过例如由下面的表达式(1)所指示的能量函数E(x)来限定。
右侧的第一项是针对可从包括在伊辛模型中的所有状态变量中选择的两个状态变量的所有组合来在没有遗漏和重叠的情况下通过将两个状态变量的值和权重系数的乘积相加而获得的和。xi是第i个状态变量。xj是第j个状态变量。Wij是指示第i个状态变量与第j个状态变量之间的权重(例如,耦合强度)的权重系数。
右侧的第二项是所有状态变量中的每个状态变量的偏置系数与状态变量的值的乘积之和。bi指示第i个状态变量的偏置系数。
例如,伊辛模型中的自旋“-1”对应于状态变量的值“0”。伊辛模型中的自旋“+1”对应于状态变量的值“1”。因此,状态变量也可以被称为取值为0或1的位。
基于当多个位中的任何一个位被改变时引起的能量变化量与热噪声值之间的比较结果,搜索单元12确定是否允许改变该位。当搜索单元12确定允许改变该位时,该位的值被改变以引起状态转换。在下文中,将位的值改变被称为翻转。基于针对每个副本设置的温度值和随机数值来获得热噪声值。随着温度值增加,热噪声值的大小增加。
当执行副本交换方法时,为副本中的每个副本设置在最大温度与最小温度之间的彼此不同的温度值。在每个副本中重复进行MCMC处理并且以预定的交换概率在副本之间执行状态(或温度)交换,所述MCMC处理是用于确定是否允许进行上述位的翻转、执行状态转换等的处理。
例如,搜索单元12可以每当在每个副本电路中执行状态转换时对能量进行更新,并且输出通过执行预定次数的重复处理获得的能量中的在所有副本中获得最小能量时的状态作为解。
根据本实施方式的数据处理设备10的搜索单元12对多个副本电路中的每个副本电路在针对优化问题的解的搜索处理时从预定时段开始时的状态起的移动距离进行计算。移动距离可以由汉明距离来表示。例如,N个位的状态X(a)与状态X(b)之间的汉明距离由下面的表达式(2)表示。
xi (a)表示状态X(a)的第i个状态变量,以及xi (b)表示状态X(b)的第i个状态变量。
例如,每当执行上述MCMC处理或者每当发生状态转换时,计算移动距离。
搜索单元12可以计算多个副本电路中的每个副本电路中的在上述预定时段中的能量的平均值(在下文中,称为平均能量)。
例如,处理单元13可以通过软件处理来实现,在软件处理中,作为诸如CPU、GPU或DSP的硬件的处理器执行诸如存储在存储单元11中的温度调节程序的程序。处理单元13可以通过使用诸如ASIC或FPGA的电子电路来实现。
处理单元13具有调节最小温度的功能,该最小温度是用于通过副本交换方法进行解搜索的多个温度值中的最小值。
图2是示出最小温度的调节过程的流程图。
步骤S10:处理单元13从搜索单元12获取多个副本电路中的每个副本电路中的从针对优化问题的解的搜索处理中的预定时段(在下文中,称为测量时段)开始时的状态到移动最多的状态的距离(在下文中,称为最大移动距离)。例如,每当执行MCMC处理时,获取状态之间的距离。
步骤S11:处理单元13检测多个副本电路中的每个副本电路中的在测量时段中的移动距离的最大移动距离中的最小值。在图2中,最大移动距离由Hi表示,以及上述最小值由min(Hi)表示。
步骤S12:处理单元13基于最小值与预定阈值之间的比较结果来改变最小温度。
步骤S13:处理单元13在搜索单元12中设置改变之后的最小温度。
在步骤S12中,预定阈值例如是在测量时段中请求的移动距离。例如,阈值由用户根据要计算的优化问题来输入。作为确定阈值的方法,可以设想指定位数N的预定比率的方法。例如,在期望在测量时段中移动所有位的1%的情况下,0.01N被指定为阈值。
处理单元13可以通过使用表示测量时段的步骤数M来使用a=log2M作为阈值a。步骤数是MCMC处理的重复次数。
当期望在M个步骤期间所要采取的所有状态彼此不同时,使用a=log2M。为了使解搜索有效,在优化问题的计算中,期望状态不返回至曾经达到的状态。然而,在M个步骤期间存在采取状态的各种方式,并且所述情况也通过例如顺序地翻转不同的M个位来实现。
然而,当考虑低温下的运动范围时,状态处于能量图景(landscape)的底部。以顺序地翻转不同的M个位的方式形成能量图景的底部是罕见的,并且在许多情况下,存在不同的M个位在某种程度上聚集的趋势(移动距离短)。因为难以合并该聚集状态,并且没有严格考虑,所以当简单考虑并且假设所有状态彼此最接近时,此时M个状态中的每个状态之间的距离的最大值的近似值是上述log2M。
图1示出了可以由每个副本的状态得到的解空间的图像图。
A1至A4指示测量时段中的四个副本(副本i(i=1至4))的状态在解空间中的移动范围。H1至H4指示四个副本的最大移动距离。在图1所示的示例中,最大移动距离中的最小值(min(Hi))是min(Hi)=H2。
因此,在步骤S12的处理中,处理单元13基于H2与阈值a之间的比较结果来改变最小温度。当H2>a成立时,处理单元13降低最小温度(降低最小温度值)。当H2<a成立时,处理单元13增加最小温度(增加最小温度值)。当min(Hi)=a时,处理单元13不必调节最小温度。
例如,在步骤S12的处理中,处理单元13根据下面的表达式(3)来计算新的最小温度。
在表达式(3)中,Tmin,新是新的最小温度,以及Tmin,旧是改变之前的最小温度。如在表达式(3)中,将最小温度调节对应于min(Hi)与阈值a之间的差的大小。
当最小温度增加时,状态转换的数目伴随能量增加而增加。因此,认为在上述测量时段中移动距离增加。因此,min(Hi)也增加。例如,在新的最小温度由表达式(3)确定的情况下,认为在下一测量时段中min(Hi)接近阈值a。
在搜索单元12对多个副本电路中的每个副本电路中的在上述测量时段中的平均能量进行计算的情况下,处理单元13获取平均能量。例如,处理单元13检测具有与其中设置最小温度的副本电路(在下文中,称为最小温度副本电路)的平均能量之差小于预定阈值(例如,1)的平均能量的副本电路r的数目。处理单元13根据下面的表达式(4)计算新的最小温度。
在表达式(4)中,n是所有副本电路的数目。
当存在平均能量相对于最小温度副本电路的平均能量几乎不改变的大量副本电路时,可以在任意温度下采取大的移动距离。因此,存在最小温度过度降低的可能性。因此,在存在具有与最小温度副本电路的平均能量之差小于预定阈值的平均能量的副本电路的情况下,处理单元13确定多个副本电路重复进行等能量转换。通过根据对应的副本电路r的数目来依据以上表达式(4)增加最小温度,处理单元13可以抑制最小温度的过度降低。
在步骤S13的处理中,处理单元13在搜索单元12中设置如上所述改变的(新生成的)最小温度。
针对每个副本电路,搜索单元12设置在最大温度与改变之后的最小温度之间的彼此不同的温度值,并且重复进行如上所述的搜索处理。搜索单元12可以重复计算移动距离和平均能量。在这种情况下,处理单元13还重复调节最小温度。
根据如上所述的第一实施方式的数据处理设备10,处理单元13基于各个副本电路在预定时段(测量时段)中在解空间中的最大移动距离中的最小值与阈值之间的比较结果来调节最小温度。因此,由于可以执行反映解的搜索状态的调节,因此可以使用于获得适当的最小温度的调节时间缩短。
(第二实施方式)
图3是示出根据第二实施方式的数据处理设备的示例的图。
根据第二实施方式的数据处理设备20包括搜索单元21、温度调节单元22a和整体控制单元23。搜索单元21是图1所示的搜索单元12的示例,以及温度调节单元22a和整体控制单元23是图1所示的处理单元13的示例。未示出与图1所示的存储单元11对应的元件。
例如,搜索单元21可以通过使用诸如ASIC或FPGA的电子电路来实现。例如,温度调节单元22a和整体控制单元23可以通过软件处理来实现,在软件处理中,诸如CPU的处理器执行程序。实现方式不限于此,并且搜索单元21、温度调节单元22a和整体控制单元23中的每一个的一部分或全部可以通过使用如上所述的电子电路来实现。搜索单元21、温度调节单元22a和整体控制单元23中的每一个的一部分或全部可以通过软件处理来实现。
在根据第二实施方式的数据处理设备20中,搜索单元21通过副本交换方法搜索优化问题的解。
例如,如图3所示,搜索单元21包括分别与副本对应的副本电路21a1、21a2、……和21an。搜索单元21还包括温度控制单元21b。
针对副本电路21a1至21an设置彼此不同的温度值(T1至Tn)。例如,基于预先给定的最大温度(Tmax)和最小温度(Tmin)基于下面的表达式(5)和(6)来确定初始T1至Tn。
在表达式(5)中,Ti是针对副本电路21a1至21an中的第i个副本电路设置的温度值。在表达式(6)中,n是副本电路21a1至21an的数目(副本的数目)。
副本电路21a1至21an中的每个副本电路通过使用例如如下所述的电路基于由表达式(1)表示的能量函数来实现解搜索。在下文中,将主要描述副本电路21a1,但是副本电路21a2至21an可以通过相同的电路配置来实现。
副本电路21a1包括:位翻转可用性确定单元30a1、30a2、……和30aN;选择器单元30b;状态保存单元30c;汉明距离计算单元30d;以及平均能量计算单元30e。
确定将包括在副本的状态中的每个位翻转的可用性以及将被确定为可翻转的任何位翻转的处理对应于由副本电路21a1进行的MCMC处理的单次处理。重复执行单次处理。在下文中,由副本电路21a1至21an并行执行的单次处理的重复次数可以被称为步骤数。
位翻转可用性确定单元30a1至30aN中的每一个是算术处理电路,其确定与其自身处理的一个位相关的翻转的可用性。位翻转可用性确定单元30a1至30aN并行执行上述确定处理。
当具有索引=i的位的值(状态变量xi)改变为1-xi时,xi的变化量可以表示为δxi=(1-xi)-xi=1-2xi。因此,伴随xi的值的改变的能量变化量(ΔEi)可以根据表达式(1)由下面的表达式(7)表示。
在表达式(7)中,hi可以由下面的表达式(8)表示。
位翻转可用性确定单元30a1至30aN中的每一个保存关于xi的hi,并且在xi的值改变的情况下基于表达式(7)根据hi获得ΔEi。
在下文中,作为示例,将主要描述位翻转可用性确定单元30a1。具有相同名称的配置的位翻转可用性确定单元30a2至30aN具有相同的功能。
由位翻转可用性确定单元30a1处理的位被称为自身位,而由位翻转可用性确定单元30a2至30aN处理的位被称为其他位。
位翻转可用性确定单元30a1存储自身位与其他位之间的权重系数(W1j(j=1至N))。W1j的下标“j”指示包括自身位(具有索引=1的位)的位中的一个位的索引。W11=0保持不变。
位翻转可用性确定单元30a1基于表达式(8)使用W1j来计算h1。
通过使用h1,位翻转可用性确定单元30a1基于表达式(7)来生成在自身位翻转的情况下生成的ΔE1。例如,位翻转可用性确定单元30a1可以根据从状态保存单元30c提供的自身位的当前值来确定自身位的值是改变为0还是1。位翻转可用性确定单元30a1将所生成的ΔE1输出至平均能量计算单元30e。
位翻转可用性确定单元30a1基于ΔE1与热噪声值之间的比较结果来确定翻转自身位的可用性。作为热噪声值,例如,可以使用T1·log(u)。T1是针对副本电路21a1设置的温度值,以及u是取值从0到1的均匀随机数。例如,当-ΔE1≥T·log(u)成立时,位翻转可用性确定单元30a1允许翻转。
选择器单元30b接收由位翻转可用性确定单元30a1至30aN中的每一个输出的翻转可用性的确定结果。当存在被确定为可翻转的多个位时,选择器单元30b随机地或根据预定规则选择多个位中的一个位。选择器单元30b向位翻转可用性确定单元30a1至30aN中的每一个输出所选择的位的索引=j,并且向状态保存单元30c输出索引=j和翻转指令信号(更新)。
例如,状态保存单元30c包括寄存器,并且保存副本电路21a1中的副本的状态(X1(x1、x2、……和xN))。基于更新和索引=j,当选择器单元30b选择被确定为可翻转的位中的任何一个时,状态保存单元30c使该位翻转。当副本电路21a1中的搜索处理完成预定次数或预定时段时,状态保存单元30c向温度调节单元22a和整体控制单元23输出X1。
汉明距离计算单元30d从状态保存单元30c获取预定测量时段开始时的状态X1,并且保存该状态X1。每当在测量时段中重复MCMC处理时,汉明距离计算单元30d从状态保存单元30c获取X1,根据开始时的X1计算移动距离(汉明距离)h1,m,并且将移动距离输出至温度调节单元22a。可以基于表达式(2)来计算汉明距离。
平均能量计算单元30e计算平均能量E1,ave,并且将平均能量E1,ave输出至温度调节单元22a。例如,平均能量计算单元30e从状态保存单元30c获取测量时段开始时的状态X1,并且基于表达式(1)计算能量。每当重复进行MCMC处理时,平均能量计算单元30e从位翻转可用性确定单元30a1至30aN中的任何一个获取通过位的翻转生成的能量变化量,并且通过使用能量变化量对平均能量E1,ave进行更新。
温度控制单元21b在包括在副本电路21a1至21an中的每个副本电路中的位翻转可用性确定单元中设置T(T1至Tn中的任何一个)。当由温度调节单元22a对Tmin进行更新时,温度控制单元21b根据表达式(5)和(6)基于预先设置的Tmax和更新之后的Tmin对T1至Tn进行更新,并且在副本电路21a1至21an中设置新的T1至Tn。
温度控制单元21b控制副本电路21a1至21an中的T的交换(温度交换)。基于由下面的表达式(9)表示的交换概率(pij),温度控制单元21b针对具有相邻温度值的每对副本电路(一对两个副本电路)确定是否执行温度交换。
在表达式(9)中,Ei是与副本电路21a1至21an中的第i个副本电路的状态对应的能量。Ej是与第j个副本电路的状态对应的能量。Ti是针对第i个副本电路设置的温度值。Tj是针对第j个副本电路设置的温度值。k是玻尔兹曼常数。
温度控制单元21b在副本电路21a1至21an中的每个副本电路中设置交换之后的温度值。
在以上描述中,搜索单元21在副本电路21a1至21an中交换温度值,只是可以以表达式(9)的概率来交换状态。然而,与交换状态相比,交换温度值所涉及的要发送和接收的信息量更少。
温度调节单元22a基于分别由副本电路21a1至21an输出的移动距离h1,m、h2,m、……和hn,m以及平均能量E1,ave,E2,ave、……和En,ave来调节最小温度Tmin。稍后将描述温度调节单元的示例。
整体控制单元23控制数据处理设备20的整体操作。当从数据处理设备20的外部接收到激活信号的输入时,整体控制单元23将激活信号输出至温度控制单元21b,激活搜索单元21,并且开始进行对优化问题的解的搜索处理。当由搜索单元21进行的搜索处理结束时,整体控制单元23从搜索单元21获取X1至Xn,并且获得优化问题的解。例如,整体控制单元23将与所获取的X1至Xn中的最小能量对应的状态设置为解。整体控制单元23向数据处理设备20的外部输出指示算术运算结束的结束信号。结束信号可以包括指示通过算术运算获得的解的信息。例如,整体控制单元23可以向耦接至数据处理设备20的显示设备(未示出)输出指示解的图像信息,并且使显示设备显示指示解的图像信息,以向用户呈现所获得的解的细节。
整体控制单元23可以接收存储在存储单元(未示出)中的上述问题信息(Wij或bi)、状态的初始值等,并且可以在搜索单元21中的每个单元中对它们进行设置。整体控制单元23可以从数据处理设备20的外部接收Tmin或Tmax的初始值,并且在温度控制单元21b中对所述初始值进行设置。对这些信息的设置可以由另一控制单元来执行。
当从数据处理设备20的外部接收到复位信号的输入时,整体控制单元23清除由搜索单元21和温度调节单元22a保存的信息。
(温度调节单元22a的示例)
图4是示出温度调节单元的示例的图。
温度调节单元22a包括最大移动距离保存单元40、最小值检测单元41、等能量转换副本数目检测单元42、参数获取单元43和最小温度调节单元44。
根据由副本电路21a1至21an输出的h1,m至hn,m,最大移动距离保存单元40获取并保存多个副本中的每个副本的测量时段中的最大移动距离H1至Hn。在该示例中,最大移动距离保存单元40从副本电路21a1至21an间接地获取最大移动距离H1至Hn。副本电路21a1至21an可以获得最大移动距离H1至Hn,并且在这种情况下,最大移动距离保存单元40从副本电路21a1至21an直接地获取最大移动距离H1至Hn。
最小值检测单元41检测H1至Hn中的最小值,例如min(Hi)。
等能量转换副本数目检测单元42获取E1,ave至En,ave,并且检测具有与最小温度副本的平均能量之差小于预定阈值(例如,1)的平均能量的副本r的数目。
例如,参数获取单元43获取由用户输入的阈值a和表示测量时段的步骤数M。
通过使用上述的阈值a、在测量时段结束时(在其中步骤数为M的MCMC处理结束时)的min(Hi)、以及副本r的数目,最小温度调节单元44根据表达式(3)和(4)来调节(改变)Tmin,并且在搜索单元21中设置Tmin。
图5示出了温度调节单元的另一示例。在图5中,与图4所示的元件相同的元件由相同的附图标记表示。
温度调节单元22b包括阈值计算单元45。在图5中的温度调节单元22b中,参数获取单元43不获取阈值a,并且阈值计算单元45根据如上所述的步骤数M来计算a=log2M。最小温度调节单元44通过使用由阈值计算单元45计算的阈值a来调节Tmin。
图6是示出最小温度的调节过程的流程的示例的流程图。
例如,在整体控制单元23的控制下执行以下处理。
温度调节单元22a或22b获取步骤数M和阈值a(步骤S20)。在如图5所示的温度调节单元22b的情况下,不必获取阈值a。
温度调节单元22a或22b设置i=1(步骤S21),并且执行初始化,使得m=1且Hi=0(步骤S22)。此后,执行步骤S23的处理。
在步骤S23的处理中,搜索单元21的副本电路21a1至21an中的执行第i个副本(在下文中,称为副本i)的处理的副本电路的汉明距离计算单元获取副本i的当前状态(测量时段开始时的状态)作为Xi,1。副本电路的平均能量计算单元基于Xi,1计算副本i的能量作为Ei,ave。
此后,在搜索单元21中执行MCMC处理(步骤S24)。因此,根据预定状态转换的接受概率对每个副本的状态进行更新。执行副本i的处理的副本电路的汉明距离计算单元对副本i的当前状态与Xi,1之间的移动距离hi,m进行计算(步骤S25)。温度调节单元22a或22b获取hi,m。
当hi,m在针对副本i的hi,m中最大时,温度调节单元22a或22b用hi,m对Hi进行更新,并且保存Hi(步骤S26)。该处理对应于Hi=max(Hi,hi,m)的计算。
执行副本i的处理的副本电路的平均能量计算单元获得副本i的平均能量,并且对Ei,ave进行更新(步骤S27)。
温度调节单元22a或22b设置m=m+1(步骤S28),并且确定m≤M+1是否成立(步骤S29)。当确定m≤M+1成立时,重复从步骤S24起的处理。
当确定m≤M+1不成立时,温度调节单元22a或22b设置i=i+1(步骤S30),并且确定i≤n+1是否成立(步骤S31)。当确定i≤n+1成立时,重复从步骤S22起的处理。
当确定i≤n+1不成立时,执行步骤S32的处理。
在步骤S32的处理中,温度调节单元22a或22b获取E1,ave至En,ave,并且检测具有与最小温度副本的平均能量之差小于预定阈值的平均能量的副本r(在图6中由等能量转换副本表示)的数目。
温度调节单元22a或22b确定r>0是否成立(步骤S33)。温度调节单元22a或22b在确定r>0成立时执行步骤S35的处理,并且在确定r>0不成立时执行步骤S34的处理。
在步骤S34的处理中,温度调节单元22a或22b检测针对所有副本的Hi中的最小值min(Hi),并且确定a>min(Hi)是否成立。温度调节单元22a或22b在确定a>min(Hi)成立时执行步骤S35的处理,并且在确定a>min(Hi)不成立时执行步骤S36的处理。
在步骤S35和S36的处理中,温度调节单元22a或22b调节最小温度,并且在搜索单元21中设置新的最小温度。在a=min(Hi)的情况下,可以维持当前最小温度而不调节最小温度。
通过在步骤S35的处理中调节最小温度,最小温度增加。通过在步骤S36的处理中调节最小温度,最小温度降低。尽管根据上述表达式(3)计算新的最小温度,但是在r>0的情况下,在步骤S35的处理中,根据上述表达式(4)计算新的最小温度。
相应地,最小温度的单次调节处理结束。通过重复如上所述的步骤S21至S36的处理,可以将最小温度调节至更合适的最小温度。
上述处理的过程是示例,并且可以适当地改变处理顺序。
根据上述第二实施方式的数据处理设备20产生了与根据第一实施方式的数据处理设备10的效果类似的效果。例如,由于可以执行反映解的搜索状态的调节,因此可以使用于获得适当的最小温度的调节时间缩短。
(实验示例)
在下文中,将对通过使用如图3所示的数据处理设备20来在5分钟的运行时间内获得Gset的G22和G39的解而获得的结果给出描述,所述Gset是作为优化问题的示例的最大切割问题的基准问题。已知G22的最优解的能量为-13359,以及G39的最优解的能量为-10299。
通过使用数据处理设备20获得的各个副本中的最小能量的平均值在G22的情况下为-13334.2,而在G39的情况下为-13352.0。
作为比较例,作为通过不调节最小温度的方法在5分钟的运行时间内获得Gset的G22和G39的解的结果,最小能量的平均值在G22的情况下为-13324.8,而在G39的情况下为-10034.4。因此,数据处理设备20在G22中获得了比在比较例中低9.4的能量以及在G39中获得了比在比较例中低14.6的能量,并且获得了更好的解。例如,已经发现获得了如上所述的调节最小温度的效果。
(由计算机实现的示例)
由图1或图3所示的数据处理设备10或20执行的上述处理(例如,图2或图6)的细节可以由通过使如下所述的计算机执行程序的软件实现。
程序可以记录在计算机可读记录介质上。作为记录介质,例如,可以使用磁盘、光盘、磁光盘、半导体存储器等。磁盘的示例包括软盘(FD)和HDD。光盘的示例包括致密盘(CD)、CD可记录(R)/可重写(RW)、数字通用盘(DVD)和DVD-R/RW。程序可以记录在便携式记录介质中并且被分发。在这种情况下,程序可以从便携式记录介质被复制到另一记录介质并且被执行。
图7是示出作为数据处理设备的示例的计算机的硬件的示例的图。
计算机50包括处理器51、RAM 52、HDD 53、GPU 54、输入接口55、介质读取器56和通信接口57。上述处理器51、RAM 52、HDD 53、GPU 54、输入接口55、介质读取器56和通信接口57被耦接至总线。
例如,处理器51可以用作图1中的搜索单元12和处理单元13,以及用作图3中的搜索单元21、温度调节单元22a和整体控制单元23。处理器51是诸如GPU或CPU的处理器,包括用于执行程序指令的运算电路和诸如高速缓冲存储器的存储电路。处理器51将存储在HDD53中的程序和数据中的至少一部分加载至RAM 52中,并且执行该程序。例如,如图3所示,处理器51可以包括多个处理器核,以便并行执行副本电路21a1至21an的功能。计算机50可以包括多个处理器。多个处理器(多处理器)的集合可以被称为“处理器”。
例如,RAM 52用作图1所示的存储单元11。RAM 52是暂时存储要由处理器51执行的程序和要由处理器51用于算术运算的数据的易失性半导体存储器。计算机50可以包括除RAM 52之外的一种类型的存储器,并且可以包括多个存储器。
HDD 53是存储诸如操作系统(OS)、中间件或应用软件的软件程序以及数据的非易失性存储设备。程序的示例包括用于使计算机50执行如上所述的搜索优化问题的解的处理和最小温度的调节处理的程序。计算机50可以包括其他类型的存储设备例如闪存或固态驱动器(SSD),并且可以包括多个非易失性存储设备。
根据来自处理器51的指令,GPU 54将图像(例如,表示优化问题的解的搜索结果等的图像)输出到被耦接至计算机50的显示器54a。作为显示器54a,可以使用阴极射线管(CRT)显示器、液晶显示器(LCD)、等离子体显示面板(PDP)、有机电致发光(OEL)显示器等。
输入接口55从耦接至计算机50的输入装置55a获取输入信号,并且将输入信号输出至处理器51。作为输入装置55a,可以使用诸如鼠标、触摸面板、触摸板或轨迹球的定点装置、键盘、遥控器、按钮开关等。多种类型的输入装置可以被耦接至计算机50。
介质读取器56是读取记录在记录介质56a上的程序或数据的读取设备。作为记录介质56a,例如,可以使用磁盘、光盘、磁光盘(MO)、半导体存储器等。磁盘的示例包括FD和HDD。光盘的示例包括CD和DVD。
例如,介质读取器56将从记录介质56a读取的程序或数据复制到诸如RAM 52或HDD53的另一记录介质。例如,所读取的程序由处理器51执行。记录介质56a可以是便携式记录介质,或者可以用于分发程序或数据。记录介质56a或HDD 53可以被称为计算机可读记录介质。
通信接口57是被耦接至网络57a并经由网络57a与另一信息处理设备通信的接口。通信接口57可以是经由线缆耦接至诸如交换机的通信设备的有线通信接口,或者可以是经由无线链路耦接至基站的无线通信接口。
包括诸如FPGA或ASIC的电子电路的加速器卡可以耦接至计算机50的总线。搜索单元12和21的处理可以由加速器卡执行。
尽管至此已基于实施方式描述了本公开内容的温度调节程序、数据处理设备和数据处理方法的各方面,但这些仅是示例,并不限于以上描述。
Claims (9)
1.一种非暂态计算机可读存储介质,其存储有使至少一个计算机执行处理的数据处理程序,所述处理包括:
针对基于通过对优化问题进行转换获得的伊辛模型通过副本交换方法来搜索所述优化问题的解的多个副本电路中的每个副本电路,获取所述多个副本电路中的每个副本电路在搜索所述优化问题的解时在特定时段中从第一状态到第二状态的汉明距离,所述第一状态是在所述特定时段的开始时的状态,所述第二状态是在所述特定时段中的相对于所述第一状态变化最大的状态;
获取所述多个副本电路中的每个副本电路中在所述特定时段中的距离中的最小值;
基于所述最小值与第一阈值之间的比较来改变在所述多个副本电路中的每个副本电路中设置的多个温度值中的最小温度值的大小;
在所述多个副本电路中的每个副本电路中设置改变后的最小温度值;以及
使所述多个副本电路基于所设置的最小温度值来搜索所述优化问题的解。
2.根据权利要求1所述的非暂态计算机可读存储介质,其中,所述处理还包括:
当所述最小值大于所述第一阈值时,将所述最小温度值降低对应于所述最小值与所述第一阈值之间的差的大小;以及
当所述最小值小于所述第一阈值时,将所述最小温度值增加对应于所述差的大小。
3.根据权利要求1所述的非暂态计算机可读存储介质,其中,所述处理还包括:
获取所述多个副本电路中的每个副本电路在所述特定时段中的能量的平均值;
检测所述多个副本电路中的具有与所述多个副本电路中的其中设置了所述最小温度值的副本电路的能量之差小于第二阈值的能量的副本电路的数目;以及
当所述数目大于0时,基于所述数目使所述最小温度值增加。
4.根据权利要求1所述的非暂态计算机可读存储介质,其中,所述第一阈值是表示所述特定时段的值的以二为底的对数。
5.一种数据处理设备,包括:
多个副本电路,所述多个副本电路基于通过对优化问题进行转换获得的伊辛模型通过副本交换方法来搜索所述优化问题的解;
控制单元,所述控制单元被配置成:
针对所述多个副本电路中的每个副本电路,获取所述多个副本电路中的每个副本电路在搜索所述优化问题的解时在特定时段中从第一状态到第二状态的汉明距离,所述第一状态是在所述特定时段的开始时的状态,所述第二状态是在所述特定时段中的相对于所述第一状态变化最大的状态,
获取所述多个副本电路中的每个副本电路中在所述特定时段中的距离中的最小值,
基于所述最小值与第一阈值之间的比较来改变在所述多个副本电路中的每个副本电路中设置的多个温度值中的最小温度值的大小,
在所述多个副本电路中的每个副本电路中设置改变后的最小温度值,以及
使所述多个副本电路基于所设置的最小温度值来搜索所述优化问题的解。
6.根据权利要求5所述的数据处理设备,其中,所述控制单元还被配置成:
当所述最小值大于所述第一阈值时,将所述最小温度值降低对应于所述最小值与所述第一阈值之间的差的大小,以及
当所述最小值小于所述第一阈值时,将所述最小温度值增加对应于所述差的大小。
7.根据权利要求5所述的数据处理设备,其中,所述控制单元还被配置成:
获取所述多个副本电路中的每个副本电路在所述特定时段中的能量的平均值,
检测所述多个副本电路中的具有与所述多个副本电路中的其中设置了所述最小温度值的副本电路的能量之差小于第二阈值的能量的副本电路的数目,以及
当所述数目大于0时,基于所述数目使所述最小温度值增加。
8.根据权利要求5所述的数据处理设备,其中,所述第一阈值是表示所述特定时段的值的以二为底的对数。
9.一种用于计算机执行处理的数据处理方法,所述处理包括:
针对基于通过对优化问题进行转换获得的伊辛模型通过副本交换方法来搜索所述优化问题的解的多个副本电路中的每个副本电路,获取所述多个副本电路中的每个副本电路在搜索所述优化问题的解时在特定时段中从第一状态到第二状态的汉明距离,所述第一状态是在所述特定时段的开始时的状态,所述第二状态是在所述特定时段中的相对于所述第一状态变化最大的状态;
获取所述多个副本电路中的每个副本电路中在所述特定时段中的距离中的最小值;
基于所述最小值与第一阈值之间的比较来改变在所述多个副本电路中的每个副本电路中设置的多个温度值中的最小温度值的大小;
在所述多个副本电路中的每个副本电路中设置改变后的最小温度值;以及
使所述多个副本电路基于所设置的最小温度值来搜索所述优化问题的解。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022-133785 | 2022-08-25 | ||
JP2022133785A JP2024030713A (ja) | 2022-08-25 | 2022-08-25 | 温度調整プログラム、データ処理装置及びデータ処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117634597A true CN117634597A (zh) | 2024-03-01 |
Family
ID=86095771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310483899.6A Pending CN117634597A (zh) | 2022-08-25 | 2023-04-28 | 存储介质、数据处理设备和数据处理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240070228A1 (zh) |
EP (1) | EP4336417A1 (zh) |
JP (1) | JP2024030713A (zh) |
CN (1) | CN117634597A (zh) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7206492B2 (ja) | 2019-04-26 | 2023-01-18 | 富士通株式会社 | 最適化装置及び最適化装置の制御方法 |
JP7323796B2 (ja) * | 2019-09-06 | 2023-08-09 | 富士通株式会社 | 最適化装置、最適化方法及び最適化プログラム |
-
2022
- 2022-08-25 JP JP2022133785A patent/JP2024030713A/ja active Pending
-
2023
- 2023-04-13 US US18/299,736 patent/US20240070228A1/en active Pending
- 2023-04-19 EP EP23168693.2A patent/EP4336417A1/en active Pending
- 2023-04-28 CN CN202310483899.6A patent/CN117634597A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240070228A1 (en) | 2024-02-29 |
EP4336417A1 (en) | 2024-03-13 |
JP2024030713A (ja) | 2024-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11568204B2 (en) | Optimization apparatus and control method thereof | |
US11475099B2 (en) | Optimization apparatus and method for controlling thereof | |
JP7252449B2 (ja) | 最適化装置、最適化システム、最適化方法および最適化プログラム | |
US11599073B2 (en) | Optimization apparatus and control method for optimization apparatus using ising models | |
JP7093009B2 (ja) | 最適化装置、最適化装置の制御方法及び最適化装置の制御プログラム | |
US20210065087A1 (en) | Information processing apparatus, combination optimization method, and computer-readable recording medium recording combination optimization program | |
US11631006B2 (en) | Optimization device and control method of optimization device | |
CN113283046A (zh) | 优化装置、优化方法和记录介质 | |
JP7181454B2 (ja) | 最適化装置、最適化装置の制御方法および最適化装置の制御プログラム | |
US20220012291A1 (en) | Information processing system, information processing method, and non-transitory computer-readable storage medium for storing program | |
CN117634597A (zh) | 存储介质、数据处理设备和数据处理方法 | |
EP4170558A1 (en) | Program, data processing method, and data processing device | |
JP2022094510A (ja) | 最適化プログラム、最適化方法及び情報処理装置 | |
JP2021184148A (ja) | 最適化装置、最適化方法、および最適化プログラム | |
US20240135151A1 (en) | Data processing device, data processing method, and computer-readable recording medium storing data processing program | |
US20240211529A1 (en) | Storage medium, data processing apparatus, and data processing method | |
US20240111833A1 (en) | Data processing apparatus and data processing method | |
US20220092380A1 (en) | Optimization device, optimization method, and computer-readable recording medium storing optimization program | |
US20230350972A1 (en) | Information processing apparatus and information processing method | |
US20220366011A1 (en) | Non-transitory computer-readable storage medium and information processing apparatus | |
US20230081944A1 (en) | Data processing apparatus, data processing method, and storage medium | |
US20220318663A1 (en) | Non-transitory computer-readable recording medium, optimization method, and optimization apparatus | |
JP2021131723A (ja) | 情報処理方法、情報処理装置及びプログラム | |
JP2023033141A (ja) | データ探索方法及び装置 | |
CN118114777A (zh) | 数据处理装置、存储介质和数据处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |