CN115222052A - 程序、数据处理方法及数据处理设备 - Google Patents
程序、数据处理方法及数据处理设备 Download PDFInfo
- Publication number
- CN115222052A CN115222052A CN202210026681.3A CN202210026681A CN115222052A CN 115222052 A CN115222052 A CN 115222052A CN 202210026681 A CN202210026681 A CN 202210026681A CN 115222052 A CN115222052 A CN 115222052A
- Authority
- CN
- China
- Prior art keywords
- allocation
- elements
- value
- costs
- distances
- 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
Images
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/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Business, Economics & Management (AREA)
- Complex Calculations (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
提供程序、数据处理方法及数据处理设备。在程序中,计算机搜索n个元素与针对这n个元素分配的n个分配位置的组合,并执行处理,所述处理包括执行过程和搜索。所述过程包括:执行指定第一元素和第二元素的处理;计算四个局部场,所述四个局部场指示由于四个状态变量的值的变化而导致的评价函数的值的第一变化量,其中,所述四个状态变量的值由于分配位置的交换而改变;基于所述四个局部场,获得在进行所述交换的情况下评价函数的值的第二变化量;以及基于第二变化量确定是否执行所述交换。所述搜索包括通过迭代该过程来搜索使评价函数的值最小化或最大化的分配状态。
Description
技术领域
本文讨论的实施方式涉及程序、数据处理方法及数据处理设备。
背景技术
二次分配问题(QAP)是组合优化问题之一。二次分配问题是寻求将n个元素(例如设施)分配给n个分配位置使得元素之间的成本(每个均是例如流转量,例如在两个设施之间输送的供应量)与针对相应元素分配的分配位置之间的对应距离的乘积的总和最小化的分配问题。例如,二次分配问题是搜索满足下式(1)的分配的问题。
[式1]
在式(1)中,fi,j表示标识号=i和j的元素之间的成本(cost),dΦ(i)Φ(j)表示针对标识号=i和j的元素分配的分配位置之间的距离,并且Sn表示n个分配位置的集合。
作为用于计算通过冯诺依曼架构计算机不能很好地计算的大规模离散优化问题的设备,存在使用伊辛(Ising)型评价函数(也称为能量函数等)的伊辛设备(也称为玻尔兹曼机)(例如,专利文献1和专利文献2)。
伊辛设备将组合优化问题转换成表示磁性元件的自旋行为的伊辛模型。基于马尔可夫链蒙特卡罗方法例如模拟退火方法或副本交换方法(也称为并行回火方法等),伊辛设备搜索伊辛模型的使伊辛型评价函数(相当于能量)的值最小化的状态。最优解是具有评价函数的最小值中的最低的最小值的状态。通过改变评价函数的符号,伊辛设备能够搜索使评价函数的值最大化的状态。伊辛模型的状态可以由多个状态变量的值的组合来表示。每个状态变量都可以使用值0或1。
伊辛型评价函数例如由下式(2)定义。
[式2]
右侧的第一项是以下乘积的总和:所述乘积每个均是根据伊辛模型中的所有状态变量的所有组合(没有遗漏和重复)中的一个组合中的两个状态变量的值(每个均为0或1)以及权重值(指示两个状态变量之间的交互强度)获得的。此处,xi是标识号为i的状态变量,xj是标识号为j的状态变量,并且Wij是指示标识号为i和j的状态变量之间的交互强度的权重值。右侧的第二项是以下乘积的总和:所述乘积每个均是根据针对标识号之一的偏差系数和状态变量获得的。此处,bi表示针对标识号=i的偏差系数。然后,c是常数。
由于xi的值的变化而引起的能量变化量(ΔEi)由下式(3)表示。
[式3]
在式(3)中,在状态变量xi从1改变为0时Δxi为-1,而在状态变量xi从0改变为1时Δxi为1。然后,hi被称为局部场(local field),并且ΔEi是hi和取决于Δxi的符号(+1或-1)的乘积。
例如,在ΔEi小于基于随机数和温度参数的值获得的噪声值(也称为热噪声)的情况下,迭代以下处理:更新xi的值以产生状态转变以及更新局部场。
此外,上述二次分配问题可以通过使用伊辛型评价函数来计算。
二次分配问题的伊辛型评价函数可以由下式(4)表示。
[式4]
在式(4)中,x是状态变量的向量并且表示n个元素相对于n个分配位置的分配状态。此处,xT被表示为(x1,1,...,x1,n,x2,1,...,x2,n,...,xn,1,...,xn,n)。此处,xi,j=1指示标识号=i的元素被分配给标识号=j的分配位置,并且xi,j=0指示标识号=i的元素没有被分配给标识号=j的分配位置。
然后,W是权重值的矩阵并且可以通过使用如上所述的n个分配位置之间的距离的矩阵D和成本(fi,j)由下式(5)来表示。
[式5]
[引文列表]
[专利文献]
[专利文献1]日本公开特许公报第2019-185602号。
[专利文献2]日本公开特许公报第2020-194442号。
发明内容
[技术问题]
根据使用伊辛型评价函数来计算二次分配问题的方法,计算能量变化量、更新局部场等处理被迭代多次。因此,希望能够高速地访问存储这些处理要使用的信息例如权重值和局部场的存储单元。然而,在很多情况下,这样的存储单元具有相对小的容量。因此,在问题的规模大的情况下,由于这样的存储单元不能存储用于计算的全部信息,因此存在不能计算该问题的可能性。
根据一方面,本公开内容的目的是提供即使在使用具有相对小的容量的存储单元的情况下也能够计算大规模问题的程序、数据处理方法及数据处理设备。
[问题的解决方案]
根据实施方式的一方面,一种程序,其中,计算机搜索n个元素与针对这n个元素分配的n个分配位置的组合,其中n是2或大于2的整数,所述程序执行处理以:执行包括以下步骤的过程,所述过程包括:在n个元素中指定第一元素和第二元素;从存储n个元素之间的成本、n个分配位置之间的距离以及n个元素相对于n个分配位置的分配状态的存储器中读取第一元素和第二元素中的每个元素的n个成本以及第一元素的第一分配位置和第二元素的第二分配位置中的每个分配位置的n个距离;通过使用n个成本与相应的n个距离的乘积的总和来计算指示评价函数的值的第一变化量的四个局部场,所述评价函数是取决于分配状态来指示能量并且包括指示分配状态的n2个状态变量的伊辛型评价函数,所述第一变化量是由于n2个状态变量中的四个状态变量的值的变化而引起的,其中,所述四个状态变量的值由于在第一元素与第二元素之间交换分配位置而改变;基于所述四个局部场、n个成本中的第一元素与第二元素之间的第一成本以及n个距离中的第一分配位置与第二分配位置之间的第一距离,获得在进行所述交换的情况下评价函数的值的第二变化量;以及基于第二变化量和预定值确定是否执行所述交换;通过在改变用作第一元素和第二元素的元素对的同时迭代所述过程来搜索使评价函数的值最小化或最大化的分配状态。
此外,根据实施方式的一方面,提供一种数据处理方法。此外,根据实施方式的一方面,提供一种数据处理设备。
[发明效果]
根据本公开内容的一方面,即使在使用具有相对小的容量的存储单元的情况下也可以计算大规模问题。
附图说明
图1是示出根据第一实施方式的数据处理设备和数据处理方法的示例的图;
图2是示出局部场的计算的示例的图;
图3是示出权重值、成本和距离的矩阵的示例的图;
图4是示出在三个位置处布置三个设施的问题的示例的图;
图5是示出根据第二实施方式的数据处理设备的硬件示例的框图;
图6是示出数据处理设备的功能的示例的框图;
图7是示出根据第二实施方式的数据处理方法的示例的序列的流程图;以及
图8是示出根据第三实施方式的数据处理设备的示例的图。
具体实施方式
在下文中,将参照附图描述本公开内容的实施方式。
二次分配问题具有将所有元素分配到不同分配位置的约束。该约束可以被认为是以下约束:在该约束中,在将取决于分配状态来指示能量的伊辛型评价函数中的指示n个元素相对于n个分配位置的分配状态的n2个状态变量布置在具有n行和n列的矩阵中时,包括在每一行中的状态变量的值之和为1并且包括在每一列中的状态变量的值之和为1。
在基于式(3)中的ΔEi逐一更新状态变量的方法中,具有该约束的二次分配问题的计算还涉及向不满足上述约束的状态的转变,并且需要长的计算时间。
一种缩短计算时间的可设想的方式是排除向除了满足上述约束的分配状态之外的分配状态的转变。在这种情况下,在一次状态转变中四个状态变量的值被改变。当n2个状态变量以n行和n列布置时,四个状态变量的值在一次状态转变中改变,以满足包括在每一行中的状态变量的值之和为1并且包括在每一列中的状态变量的值之和为1的约束。这使得可以排除向除了满足上述约束的分配状态之外的分配状态的转变。
当具有值0的状态变量xb是更新目标候选时,各自分别具有值1的状态变量xa和xd是包括在与xb相同的行和相同的列中的状态变量之中的更新目标候选。另外,与xa在相同列且与xd在相同行的具有值0的xc是更新目标候选。
当ΔEb表示由于这四个状态变量的值的变化而引起的伊辛模型的能量变化量时,ΔEb由下式(6)表示。此处,ha表示由于xa的变化而引起的能量变化量,hb表示由于xb的变化而引起的能量变化量,hc表示由于xc的变化而引起的能量变化量,并且hd表示由于xd的变化而引起的能量变化量。
[式6]
ΔEb=(ha+hd)-(hb+hc)-(Wad+Wbc) (6)
由于xa、xb、xc和xd的变化而引起的局部场变化量(Δhm(m=1,2,……,n2))由下式(7)表示。
[式7]
Δhm=Wbm+Wcm-(Wam+Wdm) (7)
如式(6)和式(7)中所呈现的,权重值被用于计算能量变化量以及更新局部场。由于权重值由式(5)表示,因此存储单元可以存储n个元素之间的成本以及n个分配位置之间的距离,而不是存储n2×n2个权重值本身。由于标识号=i的元素与标识号=j的元素之间分配位置的交换而引起的能量变化量由下式(8)表示,式(8)是经式(6)变换来的。
[式8]
ΔE=ha+hd-hb-hc+2·fi,j·dφ(i),φ(j) (8)
式(8)中,Φ(i)是标识号=i的元素的分配位置的标识号,并且Φ(j)是标识号=j的元素的分配位置的标识号。
n行n列的局部场(矩阵H)的变化量(ΔH)由下式(9)表示。
[式9]
ΔH=ΔFΔD=(f,j-f,i)(dφ(i),-dφ(j),) (9)
在式(9)中,f,j表示在n行n列的成本(矩阵F)中的第j列中的所有成本,并且f,i表示在矩阵F中的第i列中的所有成本。然后,dΦ(i),表示在n行n列的距离(矩阵D)中的第Φ(i)行中的所有距离,并且dΦ(j),表示在矩阵D中的第Φ(j)行中的所有距离。
当通过使用式(8)和式(9)来执行能量变化量的计算和局部场的更新时,存储单元不必存储n2×n2个权重值本身。然而,当问题的规模增加时,矩阵H、矩阵F和矩阵D的数据量也会增加。为此,可高速访问但具有相对小的容量的存储单元,例如包括静态随机存取存储器(SRAM)、触发器等的存储单元,可能不能存储矩阵H、矩阵F和矩阵D全部。
下面将描述的根据第一实施方式的数据处理设备和数据处理方法即使在使用具有相对小的容量的存储单元时也能够计算大规模问题。
(第一实施方式)
图1是示出根据第一实施方式的数据处理设备和数据处理方法的示例的图。
数据处理设备10是例如计算机,并且包括存储单元11和处理单元12。
存储单元11是例如包括诸如动态随机存取存储器(DRAM)的电子电路的易失性存储装置或者包括诸如硬盘驱动器(HDD)或闪存的电子电路的非易失性存储装置。
例如,存储单元11存储用于执行稍后描述的处理的程序,并且还存储成本信息、距离信息和布置信息。
成本信息包含n个元素(n为2或大于2的整数)之间的成本,并且由具有n行和n列的矩阵F表示。图1示出了成本信息的示例。矩阵F中的行号和列号对应于用于标识相应元素的元素标识号。例如,元素标识号=1的元素与元素标识号=n的元素之间的成本(第n列中的第一行处的成本)被表示为f1,n。
距离信息包含针对n个元素分配的n个分配位置之间的距离,并且由具有n行和n列的矩阵D表示。在下文中,分配位置被称为位置。图1示出了距离信息的示例。矩阵D中的行号和列号对应于用于标识相应位置的位置标识号。例如,位置标识号=1的位置与位置标识号=n的位置之间的距离(第n列中的第一行处的距离)被表示为d1,n。
例如,成本信息和距离信息从数据处理设备10的外部输入并存储在存储单元11中。
布置信息指示针对n个元素分配(布置)的位置,并且指示n个元素相对于n个位置的分配状态。布置信息由具有n行和n列的矩阵X表示,矩阵X包括n2个状态变量。例如,布置信息中的初始值从数据处理设备10的外部输入并存储在存储单元11中。布置信息中的初始值被设置成满足包括在每一行中的状态变量的值之和为1并且包括在每一列中的状态变量的值之和为1的约束。例如,这旨在将n个元素中的每一个布置在n个位置中的任一位置处。
图1示出了布置信息的示例。在矩阵X中,行号对应元素标识号,并且列号对应位置标识号。可以交换行号和列号,使得行号对应于位置标识号,而列号对应于元素标识号。在这种情况下,在以下描述中矩阵X中的行和列将被解读为列和行。
在图1所示的示例中,在第Φ(i)列中的第i行处的状态变量xa的值为1。这指示元素标识号=i的元素被布置在位置标识号=Φ(i)的位置处。在图1所示的示例中,在第Φ(j)列中的第j行处的状态变量xd的值为1。这指示元素标识号=j的元素被布置在位置标识号=Φ(j)的位置处。
布置信息可以由包括布置n个元素的位置的位置标识号(图1中的示例中的列号)的序列的行向量(一维阵列)表示。
例如,处理单元12可以由处理器来实现,该处理器是诸如中央处理单元(CPU)、图形处理单元(GPU)或数字信号处理器(DSP)的硬件。替代地,处理单元12可以由电子电路例如专用集成电路(ASIC)或现场可编程门阵列(FPGA)来实现。处理单元12执行存储在存储单元11中的程序以使数据处理设备10执行以下处理。处理单元12可以是多个处理器的集合。
例如,处理单元12通过对交换两个元素之间的布置位置的处理进行迭代来搜索使由式(2)表示的评价函数的值(能量)最小化的分配状态。最优解是具有评价函数的最小值中的最小的最小值的分配状态。通过改变由式(2)表示的评价函数的符号,处理单元12可以搜索使评价函数的值最大化的分配状态(在这种情况下,最大的最大值指示最优解)。
图1示出了由处理单元12执行的程序的一部分处理(数据处理方法)的序列的示例。
步骤S1:处理单元12指定n个元素中的两个元素(在图1所示的示例中为元素标识号=i和j的元素)作为用于确定是否交换布置位置的目标。
步骤S2:处理单元12从存储单元11中读取所指定的两个元素中的每个元素的n个成本以及布置这两个元素的两个布置位置中的每个布置位置的n个距离。处理单元12通过参考布置信息来检测两个元素的布置位置。
例如,在图1所示的示例中,元素标识号=i的元素被布置在位置标识号=Φ(i)的位置处,并且具有元素标识号=j的元素被布置在位置标识号=Φ(j)的位置处。在这种情况下,对于元素标识号=i的元素,从如图1所示的成本信息的矩阵F中读取属于与元素标识号=i对应的行(或列)的n个成本。对于位置标识号=Φ(i)的位置,从如图1所示的距离信息的矩阵D中读取属于与位置标识号=Φ(i)对应的行(或列)的n个距离。
尽管未示出,但是对于元素标识号=j的元素,从矩阵F中读取属于与元素标识号=j对应的行(或列)的n个成本。对于位置标识号=Φ(j)的位置,从矩阵D中读取属于与位置标识号=Φ(j)对应的行(或列)的n个距离。
如上所述读取的成本或距离所属的行(或列)也可以通过使用其值因两个元素之间的交换而改变的状态变量的标识号来表示。
例如,如图1所示,当在元素标识号=i和j的元素之间交换布置位置时,四个状态变量xa、xb、xc和xd的值改变。此处,xa是在第Φ(i)列中的第i行的状态变量,xb是在第Φ(j)列中的第i行的状态变量,xc是在第Φ(i)列中的第j行的状态变量,并且xd是在Φ(j)列中的第j行的状态变量。
当xk(k=1,2,……,n2)表示xa、xb、xc和xd之一时,矩阵F中针对xk所读取的n个成本(fA,)所属的行号A可以被表示为A=(k-1)/n+1(小数点右边的数字被丢弃)。行号A对应于矩阵X中指示xk所属的行的元素标识号。
矩阵D中针对xk所读取的n个距离(dB,)所属的行号B可以被表示为B=(k-1)%n+1。此处,(k-1)%n是(k-1)除以n的余数。行号B对应于矩阵X中指示xk所属的列的位置标识号。
步骤S3:处理单元12计算式(8)中的四个局部场ha、hb、hc和hd。此处,ha表示由于图1中的xa的值的变化而引起的能量变化量,并且hb表示由于图1中的xb的值的变化而引起的能量变化量。此外,hc表示由于图1中的xc的值的变化而引起的能量变化量,并且hd表示由于图1中的xd的值的变化而引起的能量变化量。可以根据下式(10)而不是式(3)通过使用所读取的n个成本和n个距离来计算每个局部场。
[式10]
在式(10)中,Φ(j)是列号的数组,其中各自分别具有值1的状态变量位于矩阵X中的相应行。下面将描述可以通过这样的式(10)计算局部场的原因。
图2是示出局部场的计算的示例的图。
[式11]
例如,xk的局部场hk可以由权重值的矩阵W中的第k行与包括n2个状态变量的状态向量的乘积来表示。状态向量是其中表示图1中示出的布置信息的矩阵X中的每一行以一维方式排列的向量。如上所述,在二次分配问题的约束下,在矩阵X中包括在每一行中的状态变量的值之和为1并且包括在每一列中的状态变量的值之和为1。因此,同样在状态向量中,每n个状态变量仅包括一个值为1的状态变量。
图3是示出权重值、成本和距离的矩阵的示例的图。图3示出了在n=3的情况下权重值的矩阵W、成本的矩阵F和距离的矩阵D。
要用于计算hk的权重值在矩阵W中第k行。因此,在k=4的情况下,例如,使用如图3所示的第四行的权重值W4=(f2,1d1,1,f2,1d1,2,f2,1d1,3,f2,2d1,1,f2,2d1,2,f2,2d1,3,f2,3d1,1,f2, 3d1,2,f2,3d1,3)。例如,可以根据矩阵F中第二行的成本和矩阵D中第一行的距离来计算W4。因此,在矩阵D和矩阵F中的每一个中,一行成本或距离被用于计算。
根据状态向量,可以例如如下表示h4。
作为第一示例,假设状态向量为xT=(1 0 0 0 1 0 0 0 1)。在这种情况下,h4可以被计算为h4=1×f2,1d1,1+0×f2,1d1,2+0×f2,1d1,3+0×f2,2d1,1+1×f2,2d1,2+0×f2,2d1,3+0×f2,3d1,1+0×f2,3d1,2+1×f2,3d1,3=f2,1d1,1+f2,2d1,2+f2,3d1,3。
作为第二示例,假设状态向量为xT=(0 1 0 0 0 1 1 0 0)。在这种情况下,h4可以被计算为h4=0×f2,1d1,1+1×f2,1d1,2+0×f2,1d1,3+0×f2,2d1,1+0×f2,2d1,2+1×f2,2d1,3+1×f2,3d1,1+0×f2,3d1,2+0×f2,3d1,3=f2,1d1,2+f2,2d1,3+f2,3d1,1。
此处,上述Φ(j)在第一示例中为Φ(j)=[1,2,3]且在第二示例中为Φ(j)=[2,3,1],并且等于距离的列号的数组,该数组是第j列中的成本的乘数。例如,在第一示例中,第一列中的成本f2,1的乘数是第一列中的d1,1,第二列中的成本f2,2的乘数是第二列中的d1,2,并且第三列中的成本f2,3的乘数是第三列中的d1,3。在第二示例中,第一列中的成本f2,1的乘数是第二列中的d1,2,第二列中的成本f2,2的乘数是第三列中的d1,3,并且第三列中的成本f2,3的乘数是第一列中的d1,1。
如以上所描述的Φ(j)的使用使得可以选择距离作为第j列中的每个成本的乘数。由上可知,可以根据式(10)计算hk。
此处,在步骤S2和S3处的处理中,处理单元12可以迭代以下处理:从存储单元11中读取fA,j和dB,Φ(j)并针对式(10)中的某个j计算fA,jdB,Φ(j),并且然后针对下一个j从存储单元11中读取fA,j和dB,Φ(j)。在这种情况下,处理单元12计算通过将所述处理迭代n次获得的n个fA,jdB,Φ(j)的总和作为hk。
步骤S4:根据式(8),处理单元12计算在元素标识号=i和j的两个元素之间进行布置位置的交换的情况下的ΔE。在步骤S3处的处理中计算的值用于式(8)中的ha、hb、hc和hd。在步骤S2的处理中读取的n个成本和/或n个距离中包括式(8)中的fi,j和dΦ(i),Φ(j)的值。
步骤S5:处理单元12根据ΔE与预定值之间的比较结果,确定是否在元素标识号=i和j的两个元素之间进行布置位置的交换。例如,预定值是基于随机数和温度参数的值获得的噪声值。
例如,当ΔE小于log(rand)×T时,处理单元12确定进行交换,log(rand)×T是基于在0与1之间(包括0和1)的均匀随机数(rand)和温度参数(T)获得的噪声值的示例。
步骤S6:当在步骤S5处的处理中确定进行交换的情况下,处理单元12通过更新布置信息来执行交换。
在步骤S6处的处理之后或者当在步骤S5的处理中确定不进行交换的情况下,处理单元12返回至步骤S1处的处理、更新元素标识号=i和j(改变元素对以用于交换确定)并且迭代从步骤S2开始的处理。
可以随机地或根据预定规则指定元素标识号=i和j。
在执行模拟退火方法的情况下,处理单元12根据针对温度参数变化的预定时间表减小上述温度参数(T)的值。处理单元12输出通过将步骤S1至S6处的处理迭代预定次数而获得的布置信息作为二次分配问题的计算结果(例如,在未示出的显示装置上显示布置信息)。处理单元12可以在每次更新元素的布置位置时更新由式(4)表示的评价函数(能量)的值,并且在能量到此时为止变为最小的情况下保存能量和布置信息。在这种情况下,处理单元12可以输出与在将步骤S1至S6处的处理迭代预定次数之后存储的最小能量相关联的布置信息作为计算结果。
在执行副本交换方法的情况下,处理单元12在其中设置了不同的温度参数值的多个副本中的每个副本中执行图1中示出的步骤S1至S6处的处理。每将步骤S1至S6处的处理迭代预定次数,处理单元12执行副本交换。例如,处理单元12在多个副本中随机地选择两个副本,并且基于这两个副本之间的能量差以及这两个副本之间的温度参数的值的差,以预定的交换概率交换所选择的两个副本之间的温度参数的值或布置信息。例如,处理单元12在每次在每个副本中更新元素的布置位置时更新由式(4)表示的评价函数的值(能量),并且在能量到此时为止变为最小的情况下保存能量和布置信息。处理单元12输出在相应副本中将步骤S1至S6处的处理迭代预定次数之后存储的最小能量中的与所有副本中的最小的最小能量相关联的布置信息作为计算结果。
根据如上所述的数据处理设备10和数据处理方法,用于计算ΔE的局部场没有被存储在存储单元11中,而是根据与作为用于确定是否交换布置位置的目标的两个元素有关的成本和距离以及这两个元素的布置位置来计算的。出于这个原因,存储单元11不必存储局部场(还有权重值),并且即使在存储单元11是小容量存储器的情况下也可以计算大规模问题。例如,可以减少存储单元11的存储容量。在执行副本交换方法的情况下,在副本之间使用不同的局部场。根据以上描述的数据处理设备10和数据处理方法,存储单元11不必存储局部场本身。因此,在使用副本交换方法的情况下,减少存储单元11中存储的数据量的效果高于使用模拟退火方法的情况。
如果存储局部场,则在每次更新布置信息时将根据式(9)更新n2个局部场。相比之下,以上描述的数据处理设备10和数据处理方法不必更新局部场。与存储局部场的情况相比,这可以减少计算量。
(第二实施方式)
在下面将要描述的第二实施方式中,将以在n个位置处布置n个设施的问题为例来描述将n个元素分配给n个分配位置的二次分配问题。在下文中,将上述成本称为流转量(flow amount)。流转量指示例如在设施等之间输送的供给量。
图4是示出在三个位置处布置三个设施的问题的示例的图。
在该示例的情况下,矩阵F包括3行3列的流转量,并且矩阵D包括3行3列的距离。在图4的示例中,fi,j等于fj,i(i和j为设施标识号),并且fj,i也被表示为fi,j。在图4的示例中,di,j等于dj,i(i和j为位置标识号),并且dj,i也被表示为di,j。
在图4的示例中,设施标识号=3的设施被布置在位置标识号=1的位置处,设施标识号=1的设施被布置在位置标识号=2的位置处,并且设施标识号=2的设施被布置在位置标识号=3的位置处。在这种情况下,在其中行号指示设施标识号并且列号指示位置标识号的布置信息(矩阵X)中,在第二列中的第一行、第三列中的第二行和第一列中的第三行的状态变量的值为1,并且其他状态变量的值为0。在这种情况下,以上描述的Φ(i)被表示为Φ(j)=[2,3,1]。
针对这样的问题,基于由于两个设施之间的布置位置的交换而引起(由以上描述的式(8)表示)的能量变化量来搜索使能量最小化的布置,但是随着设施数量或位置数量的增加,要存储的数据量增加。
图5是示出根据第二实施方式的数据处理设备的硬件示例的框图。
数据处理设备20是例如计算机,并且包括CPU 21、随机存取存储器(RAM)22、HDD23、GPU 24、输入接口25、介质读取器26和通信接口27。上述单元耦接至总线。
CPU 21是包括执行程序命令的运算电路的处理器。CPU 21将存储在HDD 23中的程序和数据的至少一部分加载到RAM 22中并执行该程序。CPU 21可以包括多个处理器核,或者数据处理设备20可以包括多个处理器。下面要描述的处理可以通过使用多个处理器或处理器核来并行执行。多个处理器的集合(多处理器)可以被称为“处理器”。
RAM 22是暂时存储由CPU 21执行的程序或CPU 21进行计算所使用的数据的易失性半导体存储器。数据处理设备20可以包括不同于RAM 22的类型的存储器,并且可以包括多个存储器。
HDD 23是存储软件程序例如操作系统(OS)、中间件和应用软件以及数据的非易失性存储装置。程序的示例包括用于使数据处理设备20执行搜索二次分配问题的解的处理的程序。数据处理设备20可以包括其他类型的存储装置例如闪存或固态驱动器(SSD),并且可以包括多个非易失性存储装置。
GPU 24根据来自CPU 21的指令将图像输出至与数据处理设备20耦接的显示器24a。作为显示器24a,可以使用阴极射线管(CRT)显示器、液晶显示器(LCD)、等离子体显示面板(PDP)、有机电致发光(OEL)显示器等。
输入接口25从与数据处理设备20耦接的输入装置25a获取输入信号,并且将输入信号输出至CPU 21。作为输入装置25a,可以使用诸如鼠标、触摸面板、触摸板和轨迹球的定点装置,以及键盘、遥控器、按钮开关等。多种类型的输入装置可以耦接至数据处理设备20。
介质读取器26是读取记录介质26a上记录的程序或数据的读取装置。作为记录介质26a,例如,可以使用磁盘、光盘、磁光(MO)盘、半导体存储器等。磁盘包括软盘(FD)和HDD。光盘包括致密盘(CD)和数字多功能盘(DVD)。
例如,介质读取器26将从记录介质26a读取的程序或数据复制到诸如RAM 22和HDD23的另一记录介质。例如,由CPU 21执行所读取的程序。记录介质26a可以是便携式记录介质,并且可以用于分发程序或数据。记录介质26a和HDD 23可以被称为计算机可读记录介质。
通信接口27是连接至网络27a并且经由网络27a与另一信息处理设备进行通信的接口。通信接口27可以是经由线缆耦接至通信装置例如交换机的有线通信接口,或者可以是经由无线链路耦接至基站的无线通信接口。
图6是示出数据处理设备的功能的示例的框图。
数据处理设备20包括输入单元30、控制单元31、存储单元32、搜索单元33和输出单元34。
例如,输入单元30、控制单元31、搜索单元33和输出单元34可以通过使用由CPU 21执行的程序模块来实现。例如,存储单元32可以通过使用RAM 22或HDD 23中保留的存储区域来实现。
例如,输入单元30接收二次分配问题的问题信息(例如设施之间的流转量以及位置之间的距离)的输入和计算条件(例如,在执行副本交换方法的情况下,例如,副本的数量和针对每个副本设置的温度参数的值)。这些信息可以通过用户操作输入装置25a输入,或者可以经由记录介质26a或网络27a输入。
控制单元31控制数据处理设备20中的这些单元以使这些单元执行稍后描述的处理。
存储单元32存储各种信息例如问题信息、计算条件、各状态变量的值以及能量的计算结果。
例如,搜索单元33通过迭代在两个元素之间交换布置位置的处理来搜索使由式(2)表示的评价函数的值(能量)最小化的布置信息。
例如,输出单元34输出通过搜索单元33的搜索获得的布置信息作为计算结果。例如,输出单元34可以输出计算结果并将其显示在显示器24a上,可以经由网络27a将计算结果传送至另一信息处理设备,或者可以将计算结果存储在外部存储装置中。
接下来,将描述数据处理设备20的处理过程。在下面的示例中将描述应用了副本交换方法的数据处理方法。
图7是示出根据第二实施方式的数据处理方法的示例的序列的流程图。
步骤S10:首先,输入单元30接收关于二次分配问题的问题信息等的输入。例如,问题信息可以通过用户操作输入装置25a输入,或者可以经由记录介质26a或网络27a输入。所输入的问题信息被存储在存储单元32中。
步骤S11:控制单元31执行初始化。例如,控制单元31设置状态变量的初始值以满足包括在n行的每一行中的状态变量的值之和为1并且包括在n列的每一列中的状态变量的值之和为1的约束。控制单元31基于状态变量的初始值和问题信息、根据式(4)和式(5)计算能量的初始值。此外,控制单元31针对每个副本设置温度参数的初始值。在副本之间设置不同的值作为温度参数的值。
控制单元31初始化搜索位置(rA,rB)以指定用于确定是否交换布置位置(在下文中称为翻转确定(flip determination))的两个设施。例如,控制单元31设置rA=0和rB=1。rA和rB各自分别指定设施标识号(在图4的示例中,为矩阵X中的行号)。例如,rA=0指示设施标识号=1(行号=1),并且rB=1指示设施标识号=2(行号=2)。
步骤S12:控制单元31选择多个副本中的一个副本。
步骤S13:根据式(10),搜索单元33计算在具有由rA和rB指定的设施标识号的设施之间进行布置位置的交换的情况下的四个局部场ha、hb、hc和hd。
例如,搜索单元33通过以下处理计算ha、hb、hc和hd。在下文中,状态[i]指示矩阵X中第(i+1)(i=0,1,……,n-1)行状态变量的值为1的列的列号。则,F[y][x]指示矩阵F中第(x+1)列第(y+1)行的流转量,并且D[y][x]指示矩阵D中第(x+1)列第(y+1)行的距离。此处,x,y=0,1,……,n-1。针对ha、hb、hc和hd中的每一个,从存储单元32中读取要用于计算的n个流转量和n个距离。
首先,搜索单元33设置ha=hb=hc=hd=0和i=0。
通过使用临时变量fA、fB、dA和dB,搜索单元33设置fA=F[rA][i],fB=f[rB][i],dA=D[状态[i]][状态[rA]]以及dB=D[状态[i]][状态[rB]]。
之后,搜索单元33将fA×dB与ha相加,将fA×dA与hb相加,将fB×dB与hc相加,并且将fB×dA与hd相加。搜索单元33使i递增1并迭代上述处理直至i达到n-1。
步骤S14:基于式(8),搜索单元33计算在具有由rA和rB指定的设施标识号的设施之间进行布置位置的交换的情况下评价函数的值的变化量(能量变化量(ΔE))。在步骤S13处的处理中计算的值被用于式(8)中的ha、hb、hc和hd。然后,F[rA][rB]被用于式(8)中的fi,j,并且D[状态[rA][状态[rB]]被用于式(8)中的dΦ(i),Φ(j)。
步骤S15:根据ΔE与基于随机数和针对所选择的副本设置的温度参数的值获得的噪声值之间的比较结果,搜索单元33执行关于是否在具有由rA和rB指定的设施标识号的设施之间交换布置位置的翻转确定。
例如,当ΔE小于log(rand)×T时,搜索单元33确定进行交换,log(rand)是基于在0与1之间(包括0和1)的均匀随机数(rand)和温度参数(T)获得的噪声值的示例。搜索单元33在确定进行交换的情况下执行步骤S16处的处理,或者在确定不进行交换的情况下执行步骤S17处的处理。
步骤S16:搜索单元33通过交换状态[rA]和状态[rB]的值来更新布置信息。搜索单元33通过增加ΔE来更新能量(E)。
步骤S17:控制单元31确定是否已经选择了所有副本。在确定尚未选择所有副本的情况下,控制单元31返回至步骤S12处的处理,并且使搜索单元33针对未选择的副本执行步骤S13至S16处的处理。在确定已经选择了所有副本的情况下,控制单元31执行步骤S18处的处理。
步骤S18:控制单元31更新搜索位置。例如,在rB=n-1且rA=n-2的情况下,控制单元31将rA和rB初始化为rA=0且rB=1。在rB=n-1但rA≠n-2的情况下,控制单元31使rA递增1并且设置rB=rA+1。在rB≠n-1的情况下,控制单元31使rB递增1。
步骤S19:控制单元31确定翻转确定计数是否指示副本交换周期。例如,当翻转确定计数除以指示副本交换周期的值的余数为0时,控制单元31确定翻转确定计数指示副本交换周期。
控制单元31在确定翻转确定计数指示副本交换周期的情况下执行步骤S20处的处理,或者在确定翻转确定计数不指示副本交换周期的情况下执行步骤S21处的处理。
步骤S20:控制单元31执行副本交换处理。例如,控制单元31随机地选择多个副本中的两个副本,并且根据这两个副本之间的能量差或者这两个副本之间的温度参数的值的差,以预定的交换概率在所选择的两个副本之间交换温度参数的设定值。
代替在两个副本之间交换温度参数的值,副本交换处理可以交换布置信息。
步骤S21:控制单元31确定翻转确定计数是否达到预定结束计数。控制单元31在确定翻转确定计数达到预定结束计数的情况下执行步骤S22处的处理,或者在确定翻转确定计数未达到预定结束计数的情况下迭代从步骤S12开始的处理。
步骤S22:输出单元34输出计算结果。例如,输出单元34输出与针对相应副本存储的最小能量中的与所有副本中的最小的最小能量相关联的布置信息作为计算结果。例如,输出单元34可以输出计算结果并将其显示在显示器24a上,可以经由网络27a将计算结果传送至另一信息处理设备,或者可以将计算结果存储在外部存储装置中。
根据如上所述的数据处理设备20和数据处理方法,用于计算ΔE的局部场没有被存储在存储单元32中,而是根据与作为用于翻转确定的目标的两个设施有关的流转量和距离以及这两个设施的布置位置来计算的。因此,存储单元32不必保存局部场(也包括权重值),并且即使在存储单元32是小容量存储器的情况下也可以计算大规模问题。
例如,当n=1024并且局部场、流转量和距离各自的数据量为4字节时,权重值矩阵W的数据量为1024×1024×1024×1024×4=4TB。另一方面,流转量矩阵F和距离矩阵D的总数据量为8MB。因此,与按原样存储权重值矩阵W的情况相比,可以使要存储的数据量减少99.9%。
在存储各自分别具有n行和n列的局部场矩阵H、矩阵F和矩阵D而不存储矩阵W的情况下,数据量随着副本的数量的增加而增加。
例如,当n=1024、副本数=32并且局部场、流转量和距离各自的数据量为4字节时,要存储的数据量被计算为矩阵H的数据量+矩阵F的数据量+矩阵D的数据量=34×4MB=136MB。另一方面,如上所述,流转量矩阵F和距离矩阵D的总数据量为8MB。因此,与存储矩阵H的情况相比,可以使数据量减少94.1%。
根据第二实施方式的数据处理设备20和数据处理方法,与使用局部场矩阵H的情况相比,可以减少计算量。例如,在使用局部场矩阵H的情况下,在n=1024的情况下,根据式(8)和式(9)将用于一次翻转确定和矩阵H的更新连同布置信息的更新的乘法的次数计算为1024×1024+1=1048577。相比之下,在根据第二实施方式的数据处理设备20和数据处理方法中,不更新矩阵H,并且在n=1024的情况下根据式(8)和式(10)将用于一次翻转确定的乘法的次数计算为1024×4+1=4097。例如,与使用局部场的矩阵H的情况相比,可以使乘法的次数减少99.6%。
如以上所描述的,可以通过使数据处理设备20执行程序来实现上述处理。
程序可以被记录在计算机可读记录介质(例如,记录介质26a)中。作为记录介质,例如,可以使用磁盘、光盘、磁光盘、半导体存储器等。磁盘包括FD和HDD。光盘包括CD、可记录(R)/可重写(RW)CD、DVD和DVD-R/RW。程序可以被记录在要分发的便携式记录介质中。在这种情况下,可以将程序从便携式记录介质复制到另一记录介质(例如,HDD 23)以进行执行。
(第三实施方式)
图8是示出根据第三实施方式的数据处理设备的示例的图。在图8中,与图5中所示的元件相同的元件被分配相同的附图标记。
根据第三实施方式的数据处理设备40包括耦接至总线的加速器卡41。
加速器卡41是搜索二次分配问题的解的硬件加速器。加速器卡41包括FPGA 41a和DRAM 41b。
在根据第三实施方式的数据处理设备40中,FPGA 41a执行例如通过图6中示出的控制单元31和搜索单元33进行的处理。
DRAM 41b用作图6中示出的存储单元32。
可以提供多个加速器卡41。在这种情况下,例如,可以并行地执行针对每个副本的处理(例如,图7中的步骤S13至S16处的处理)。
根据上述第三实施方式的数据处理设备40也产生与根据第二实施方式的数据处理设备20的效果相同的效果。
虽然以上已经基于实施方式描述了本公开内容的程序、数据处理方法和数据处理设备的各方面,但是实施方式仅是示例并且本公开内容不限于以上描述。
Claims (9)
1.一种程序,其中,计算机搜索n个元素与针对所述n个元素分配的n个分配位置的组合,其中,n是2或大于2的整数,所述计算机执行处理以:
执行包括以下步骤的过程:
在所述n个元素中指定第一元素和第二元素,
从存储所述n个元素之间的成本、所述n个分配位置之间的距离以及所述n个元素相对于所述n个分配位置的分配状态的存储器中读取所述第一元素和所述第二元素中每一个的n个成本以及所述第一元素的第一分配位置和所述第二元素的第二分配位置中每一个的n个距离,
通过使用所述n个成本与相应的n个距离的乘积的总和来计算指示评价函数的值的第一变化量的四个局部场,所述评价函数是取决于所述分配状态来指示能量并且包括指示所述分配状态的n2个状态变量的伊辛型评价函数,所述第一变化量是由于所述n2个状态变量中的四个状态变量的值的变化而引起的,其中,所述四个状态变量的值由于在所述第一元素与所述第二元素之间交换分配位置而改变,
基于所述四个局部场、所述n个成本中的所述第一元素与所述第二元素之间的第一成本以及所述n个距离中的所述第一分配位置与所述第二分配位置之间的第一距离,获得在进行所述交换的情况下所述评价函数的值的第二变化量,以及
基于所述第二变化量和预定值确定是否执行所述交换;以及通过在改变用作所述第一元素和所述第二元素的元素对时迭代所述过程来搜索使所述评价函数的值最小化或最大化的分配状态。
2.根据权利要求1所述的程序,其中,
所述预定值是基于随机数和温度参数的值获得的噪声值。
3.根据权利要求1或2所述的程序,其中,
所述成本由具有n行和n列的第一矩阵表示,
所述距离由具有n行和n列的第二矩阵表示,
所述n个成本属于所述第一矩阵中的与所述第一元素或所述第二元素的标识号对应的行或列,并且
所述n个距离属于所述第二矩阵中的与所述第一分配位置或所述第二分配位置的标识号对应的行或列。
4.根据权利要求1至3中任一项所述的程序,所述处理还包括:基于针对所述n个元素分配的n个分配位置的标识信息,针对所述n个成本中的每个成本选择所述n个距离中之一作为乘数。
5.根据权利要求1至4中任一项所述的程序,其中,
针对多个副本中的每个副本将所述分配状态存储在所述存储器中,在所述多个副本中,设置不同的值作为所述温度参数,并且
所述处理还包括:
在针对所述多个副本中的每个副本更改所述元素对的同时迭代所述过程,以及
以预定周期在所述多个副本中的任意两个副本之间交换所述温度参数的值或所述分配状态。
6.根据权利要求1至5中任一项所述的程序,其中,
所述评价函数是包括所述成本与所述距离的乘积的总和的函数,其中,所述成本中的每个成本指示在将所述n个元素分配给所述n个分配位置的情况下在所述n个元素中的相应两个元素之间输送的供应量。
7.一种由计算机执行的数据处理方法,所述计算机搜索n个元素与针对所述n个元素分配的n个分配位置的组合,其中,n是2或大于2的整数,所述数据处理方法包括:
执行包括以下步骤的过程:
在所述n个元素中指定第一元素和第二元素,
从存储所述n个元素之间的成本、所述n个分配位置之间的距离以及所述n个元素相对于所述n个分配位置的分配状态的存储器中读取所述第一元素和所述第二元素中每一个的n个成本以及所述第一元素的第一分配位置和所述第二元素的第二分配位置中每一个的n个距离,
通过使用所述n个成本与相应的n个距离的乘积的总和来计算指示评价函数的值的第一变化量的四个局部场,所述评价函数是取决于所述分配状态来指示能量并且包括指示所述分配状态的n2个状态变量的伊辛型评价函数,所述第一变化量是由于所述n2个状态变量中的四个状态变量的值的变化而引起的,其中,所述四个状态变量的值由于在所述第一元素与所述第二元素之间交换分配位置而改变,
基于所述四个局部场、所述n个成本中的所述第一元素与所述第二元素之间的第一成本以及所述n个距离中的所述第一分配位置与所述第二分配位置之间的第一距离,获得在进行所述交换的情况下所述评价函数的值的第二变化量,以及
基于所述第二变化量和预定值确定是否执行所述交换;以及通过在改变用作所述第一元素和所述第二元素的元素对时迭代所述过程来搜索使所述评价函数的值最小化或最大化的分配状态。
8.一种数据处理设备,所述数据处理设备搜索n个元素与针对所述n个元素分配的n个分配位置的组合,其中,n是2或大于2的整数,所述数据处理设备包括:
存储单元,其被配置成存储所述n个元素之间的成本、所述n个分配位置之间的距离以及所述n个元素相对于所述n个分配位置的分配状态;以及
处理器,其被配置成执行包括以下步骤的过程:
在所述n个元素中指定第一元素和第二元素,
从所述存储单元读取所述第一元素和所述第二元素中每一个的n个成本以及所述第一元素的第一分配位置和所述第二元素的第二分配位置中每一个的n个距离,
通过使用所述n个成本与相应的n个距离的乘积的总和来计算指示评价函数的值的第一变化量的四个局部场,所述评价函数是取决于所述分配状态来指示能量并且包括指示所述分配状态的n2个状态变量的伊辛型评价函数,所述第一变化量是由于所述n2个状态变量中的四个状态变量的值的变化而引起的,其中,所述四个状态变量的值由于在所述第一元素与所述第二元素之间交换分配位置而改变,
基于所述四个局部场、所述n个成本中的所述第一元素与所述第二元素之间的第一成本以及所述n个距离中的所述第一分配位置与所述第二分配位置之间的第一距离,获得在进行所述交换的情况下所述评价函数的值的第二变化量,以及
基于所述第二变化量和预定值确定是否执行所述交换;以及
通过在改变用作所述第一元素和所述第二元素的元素对时迭代所述过程来搜索使所述评价函数的值最小化或最大化的分配状态。
9.一种计算机可读记录介质,存储有根据权利要求1-6中任一项所述的程序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021-070530 | 2021-04-19 | ||
JP2021070530A JP2022165250A (ja) | 2021-04-19 | 2021-04-19 | プログラム、データ処理方法及びデータ処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115222052A true CN115222052A (zh) | 2022-10-21 |
Family
ID=78957782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210026681.3A Pending CN115222052A (zh) | 2021-04-19 | 2022-01-11 | 程序、数据处理方法及数据处理设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220335487A1 (zh) |
EP (1) | EP4080417A1 (zh) |
JP (1) | JP2022165250A (zh) |
CN (1) | CN115222052A (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6794854B2 (ja) * | 2017-02-02 | 2020-12-02 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
JP7053995B2 (ja) | 2018-04-16 | 2022-04-13 | 富士通株式会社 | 最適化装置及び最適化装置の制御方法 |
JP7208529B2 (ja) | 2019-05-29 | 2023-01-19 | 富士通株式会社 | 最適化装置及び最適化方法 |
US11132422B2 (en) * | 2019-06-20 | 2021-09-28 | Fujitsu Limited | Automating solving NP problems in annealer systems |
-
2021
- 2021-04-19 JP JP2021070530A patent/JP2022165250A/ja active Pending
- 2021-12-20 EP EP21215952.9A patent/EP4080417A1/en active Pending
- 2021-12-27 US US17/562,024 patent/US20220335487A1/en active Pending
-
2022
- 2022-01-11 CN CN202210026681.3A patent/CN115222052A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4080417A1 (en) | 2022-10-26 |
JP2022165250A (ja) | 2022-10-31 |
US20220335487A1 (en) | 2022-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7071638B2 (ja) | 最適化装置、最適化装置の制御方法及び最適化装置の制御プログラム | |
CN113283046B (zh) | 优化装置、优化方法和记录介质 | |
US11468287B2 (en) | Information processing system, information processing apparatus, and information processing method | |
JP2021064049A (ja) | 計算機システム及び数理モデルの生成支援方法 | |
CN113298284A (zh) | 信息处理设备、记录介质、信息处理方法和信息处理系统 | |
JP6925546B1 (ja) | 演算システム、情報処理装置、および最適解探索処理方法 | |
US11409836B2 (en) | Optimization problem arithmetic method and optimization problem arithmetic apparatus | |
CN115222052A (zh) | 程序、数据处理方法及数据处理设备 | |
CN116010754A (zh) | 存储程序的计算机可读记录介质、数据处理方法和设备 | |
EP4068167A1 (en) | Optimization program, optimization method, and optimization apparatus | |
JP2022094510A (ja) | 最適化プログラム、最適化方法及び情報処理装置 | |
US20220414184A1 (en) | Data processing apparatus and data processing method | |
Rocchetti et al. | High-performance computing simulations of self-gravity in astronomical agglomerates | |
JP2021184148A (ja) | 最適化装置、最適化方法、および最適化プログラム | |
EP4131084A1 (en) | Program, data processing method, and data processing apparatus | |
EP4254271A1 (en) | Data processing apparatus, program, and data processing method | |
EP4379611A1 (en) | Data processing device, data processing program, and data processing method | |
JP2023001055A (ja) | プログラム、データ処理装置及びデータ処理方法 | |
CN113283609A (zh) | 信息处理方法、信息处理设备和信息处理程序 | |
US20220405347A1 (en) | Data processing apparatus, computer-readable recording medium storing program of processing data, and method of processing data | |
EP4105843A1 (en) | Data processing apparatus, computer-readable recording medium storing program, and method of procesing data | |
US20220382932A1 (en) | Data processing apparatus, data processing method, and non-transitory computer-readable storage medium | |
JP2023028347A (ja) | プログラム、データ処理方法及びデータ処理装置 | |
JP2024049202A (ja) | データ処理装置、プログラム及びデータ処理方法 | |
JP2022161128A (ja) | プログラム、データ処理方法及びデータ処理装置 |
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 |