本文讨论的实施方式涉及数据处理设备、数据处理方法和程序。
背景技术:
1、作为对诺依曼型(neumann-type)计算机不善于解决的大规模离散优化问题进行计算的设备,存在使用伊辛型(ising-type)评估函数的伊辛设备。评估函数也被称为能量函数等。伊辛设备也被称为玻尔兹曼(boltzmann)机。
2、伊辛设备将离散优化问题转换成表示磁体的自旋行为的伊辛模型。伊辛设备通过马尔可夫链蒙特卡洛方法(markov chain monte carlo method)例如模拟退火方法或副本交换方法来搜索其中伊辛型评估函数的值为局部最小值的伊辛模型的状态。伊辛型评估函数的值对应于能量。其中评估函数的值是局部最小值中的最小值的状态是最优解。通过改变评估函数的符号,伊辛设备还可以搜索其中评估函数的值是局部最大值的状态。伊辛模型的状态可以由多个状态变量的值的组合来表示。可以使用0或1作为每个状态变量的值。
3、例如,伊辛型评估函数由下式(1)的二次形式的函数定义。
4、
5、对于伊辛模型的n个状态变量的所有组合,右侧的第一项将两个状态变量(0或1)的值与权重值的乘积相加,没有遗漏和重复。权重值表示两个状态变量之间的相互作用的程度。xi是具有标识号i的状态变量,xj是具有标识号j的状态变量,并且wij是指示具有标识号i和标识号j的状态变量之间的相互作用的程度的权重值。右侧的第二项计算每个标识号的偏差系数与状态变量的乘积之和。bi指示标识号i的偏差系数。
6、由于xi的值的变化引起的能量变化量(δei)由下式(2)表达。
7、
8、在式(2)中,当状态变量xi从1变为0时,δxi为-1,而当状态变量xi从0变为1时,δxi为1。hi被称为局部字段,并且δei是hi与取决于δxi的符号(+1或-1)的乘积。出于该原因,hi也可以被称为表示能量变化量的变量或者确定能量变化量的变量。
9、例如,重复进行以下处理,在该处理中,通过用由exp(-βδei)(β是表示温度的参数的倒数)表达的接受概率更新xi的值来生成状态转变并且局部字段被更新。
10、同时,一些离散优化问题具有解(solution)要满足的约束条件。例如,作为离散优化问题之一的背包问题(knapsack problem)具有如下约束条件:可以装在背包中的负载的总容量等于或小于背包的容量。这种约束条件被称为不等式约束,并且可以由具有与约束条件的违反的存在或不存在对应的值的约束项来表示。作为约束条件,除了不等式约束之外,还存在等式约束、绝对值约束等。
11、包括约束项的总能量(h(x))可以由下式(3)表达。
12、
13、在式(3)中,右侧的第一项和第二项之和表示与式(1)的e(x)对应的能量,并且右侧的第三项表示约束项的整体的大小(能量)。d表示状态变量的标识号的集合,k表示约束项的标识号,并且a表示约束项的标识号的集合,λk是具有标识号k的约束项的预定正系数。
14、当约束条件为不等式约束时,式(3)中的g(hk)可以由下式(4)表达。
15、
16、在式(4)中,max[0,hk]是输出0和hk中较大值的函数。rk表示具有标识号k的约束项的消耗量(也称为资源量),并且uk表示资源量的上限。wki是指示xi在具有标识号k的不等式约束中的权重的系数(权重值)。
17、在式(3)中,由于xj的值变化而引起的总能量变化量(δhj)由下式(5)表达。
18、
19、当约束条件为不等式约束时,由于xj的值变化而引起的总能量变化量(δhj)可以由下式(6)代替式(5)来表达。
20、
21、在式(6)中,aij是指示xj在具有标识号i的不等式约束中的权重的系数,并且对应于上述wki。cui是具有标识号i的不等式约束中的上限值,并且对应于上述uk。m表示约束项的数目。
22、接受xj的值的变化的接受概率可以被表达为aj=min[1,exp(-βδhj)]。min[1,exp(-βδhj)]是输出1和exp(-βδhj)中的较小值的函数。
23、式(3)不是二次形式的函数(例如,式(1)),而是线性形式的不连续函数。为了允许不等式约束由伊辛设备处理,可以设想将线性形式的不连续函数转换为二次形式。然而,在通过使用转换为二次形式的不等式约束的约束项来计算离散优化问题的情况下,存在由于处理的复杂性等而导致伊辛设备难以找到解的情况。
24、因此,提出了一种由伊辛设备使用诸如如上所述保持线性形式的不等式约束的约束项执行解查找的技术。
25、提出了一种优化设备,在该优化设备中,将混合整数编程问题的决策变量中具有连续值或整数值的决策变量离散化,将混合整数编程问题转换为组合优化问题,并且使量子计算设备计算组合优化问题的最优解。
26、还提出了一种方法,在该方法中,定义了任意约束的惩罚函数,并且通过使用惩罚函数进行无约束优化来解决约束满足问题。还提出了一种在机器学习中量化离散化深度神经网络的权重的方法。
27、日本公开特许公报第2020-204928号、日本公开特许公报第2020-113190号、美国专利申请公开第2015/0205759号和美国专利申请公开第2019/0354842号被公开作为相关技术。
28、[技术问题]
29、通过使用保持线性形式的不等式约束的约束项来查找解的方法具有没有充分地提高算术运算的效率的问题。
30、在一个方面中,本公开内容的目的在于实现算术运算的效率的提高。
31、[本发明的有利效果]
32、在一个方面中,可以提高算术运算的效率。
技术实现思路
1、根据实施方式的一方面,一种数据处理设备,该数据处理设备搜索多个状态变量的值的组合,其中,通过使用包括多个状态变量的伊辛型评估函数计算的值是局部最小值或局部最大值,该数据处理设备包括存储单元,该存储单元存储:作为具有与约束条件的违反的存在或不存在对应的值的约束项与评估函数的值之和的总能量、多个状态变量的值、多个状态变量之间的第一权重值、多个状态变量中的至少一些状态变量与约束条件之间的第二权重值、表示在多个状态变量中的每个状态变量的值改变的情况下总能量的第一变化量的第一局部字段、以及用于确定约束条件的约束违反量的第二局部字段;以及处理单元,该处理单元重复以下处理:基于第一局部字段确定是否允许多个状态变量中的第一状态变量的值的变化;以及当确定允许第一状态变量的值的变化时,基于第一权重值来更新第一局部字段,基于第一状态变量与约束条件之间的第二权重值来更新第二局部字段,以及基于通过对更新之前的第二局部字段进行量化而获得的第一量化局部字段和通过对更新之后的第二局部字段进行量化而获得的第二量化局部字段来进一步更新第一局部字段。
1.一种数据处理设备,所述数据处理设备搜索多个状态变量的值的组合,其中,通过使用包括所述多个状态变量的伊辛型评估函数计算的值是局部最小值或局部最大值,所述数据处理设备包括:
2.根据权利要求1所述的数据处理设备,其中,
3.根据权利要求1所述的数据处理设备,其中,
4.根据权利要求1所述的数据处理设备,其中,
5.根据权利要求1所述的数据处理设备,其中,
6.根据权利要求1所述的数据处理设备,其中,
7.根据权利要求6所述的数据处理设备,其中,
8.一种用于计算机执行处理的数据处理方法,所述处理包括:
9.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储数据处理程序,所述数据处理程序使至少一个计算机执行处理,所述处理包括:
