CN114581223B - 分配任务处理方法、设备、分布式计算系统及存储介质 - Google Patents

分配任务处理方法、设备、分布式计算系统及存储介质 Download PDF

Info

Publication number
CN114581223B
CN114581223B CN202210481654.5A CN202210481654A CN114581223B CN 114581223 B CN114581223 B CN 114581223B CN 202210481654 A CN202210481654 A CN 202210481654A CN 114581223 B CN114581223 B CN 114581223B
Authority
CN
China
Prior art keywords
constraint
target
dual
optimization model
task
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.)
Active
Application number
CN202210481654.5A
Other languages
English (en)
Other versions
CN114581223A (zh
Inventor
简道红
鲍阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202210481654.5A priority Critical patent/CN114581223B/zh
Publication of CN114581223A publication Critical patent/CN114581223A/zh
Application granted granted Critical
Publication of CN114581223B publication Critical patent/CN114581223B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/03Credit; Loans; Processing thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Mathematical Physics (AREA)
  • Educational Administration (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Mathematical Optimization (AREA)
  • Accounting & Taxation (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Pure & Applied Mathematics (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Marketing (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Algebra (AREA)
  • Technology Law (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书一个或多个实施例提供一种分配任务处理方法、设备、分布式计算系统及存储介质。所述方法包括:基于用户建模界面中的输入数据,确定分配任务的原始优化模型和约束条件;引入与所述约束条件相关的对偶变量;根据所述原始优化模型、所述约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量,构建无约束的目标优化模型;利用交替方向乘子法迭代求解所述目标优化模型,直到最后一轮迭代的约束误差满足预设误差;其中,迭代后的对偶变量作为对偶系数用于实时处理在线分配任务。本实施例有利于提高在线分配任务的处理效率并保证其稳定进行。

Description

分配任务处理方法、设备、分布式计算系统及存储介质
技术领域
本说明书一个或多个实施例涉及数据处理技术领域,尤其涉及一种分配任务处理方法、设备、分布式计算系统及存储介质。
背景技术
在社会生活中对于分配任务的决策无处不在。比如在金融场景中,在一个例子中,假设需要决策用户对银行的分配,在存在多家银行的情况下,需要决策将该用户分配到哪家银行贷款。在另一个例子中,假设需要决策用户对理财产品的分配,在存在多个理财产品的情况下,需要决策向用户分配哪个理财产品。
在相关技术中,可以将分配任务的决策过程形式化表达成一优化模型,通过求解优化模型以获得分配任务的决策结果。在分配任务的优化模型难以求解的情况下,其中一种方法是采用原始对偶(primal-dual)模型进行决策,即将分配任务的优化模型转换为对偶模型,通过求解对偶模型获得决策结果。
针对于在线分配任务,相关决策平台需基于在线分配任务的任务数据进行实时决策,其中一种方式是构建在线分配任务的对偶模型,通过求解对偶模型获得决策结果。但是在求解在线分配任务的对偶模型以获得决策结果之前,需要先确定对偶模型中的对偶系数。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种分配任务处理方法、设备、分布式计算系统及存储介质。
为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种分配任务处理方法,所述分配任务用于从多个资源中确定向目标对象分配的目标资源;所述方法包括:
基于用户建模界面中的输入数据,确定分配任务的原始优化模型和约束条件;
引入与所述约束条件相关的对偶变量;
根据所述原始优化模型、所述约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量,构建无约束的目标优化模型;
利用交替方向乘子法迭代求解所述目标优化模型,直到最后一轮迭代的约束误差满足预设误差;其中,迭代后的对偶变量作为对偶系数用于实时处理在线分配任务。
根据本说明书一个或多个实施例的第二方面,提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现第一方面所述的方法。
根据本说明书一个或多个实施例的第三方面,提出了一种分布式计算系统,所述分布式计算系统用于根据历史数据集合确定分配任务的对偶系数;所述分配任务用于从多个资源中确定向目标对象分配的目标资源;所述历史数据集合能够被划分为多个数据分片,每个数据分片包括部分历史分配任务的任务数据;所述分配任务的原始优化模型和约束条件基于用户建模界面中的输入数据确定;所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;
所述系统包括控制节点以及若干个工作节点;
每个所述工作节点用于:获取利用其中一个所述数据分片构建的无约束的目标优化子模型;所述目标优化子模型基于所述原始优化模型、所述约束条件、所述数据分片、所述数据分片中的决策变量以及引入的对偶变量构建得到;以及,在每轮迭代过程中,从所述控制节点中获取所述对偶变量经上一轮迭代更新的值,根据所述对偶变量的值求解所述目标优化子模型中的决策变量,并将根据所述决策变量的求解结果和所述决策变量的约束系数确定的约束值发送给所述控制节点;其中,在首轮迭代过程中,所述控制节点将所述对偶变量的值初始化为预设值;
所述控制节点用于:在每轮迭代过程中,接收各个所述工作节点发送的所述约束值,基于各个所述工作节点的约束值的累加结果和所述决策变量的约束向量之间的差异确定约束误差;在所述约束误差不满足预设误差的情况下,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点。
根据本说明书一个或多个实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现第一方面所述方法的步骤。
本说明书实施例提供了一种分配任务处理方法,能够根据原始优化模型、约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量,构建无约束的目标优化模型,并求解该目标优化模型来获得对偶变量,实现基于若干历史分配任务来预先求解出对偶系数,以便后续用于实时决策在线分配任务,从而有利于提高处理效率,并且使用交替方向乘子法来求解无约束的目标优化模型(如拉格朗日模型或者增广拉格朗日模型),其迭代求解方式可以在约束误差满足预设误差的情况下即可停止迭代,不要求约严格约束,则即使在分配任务的原始优化模型无可行解的情况下也可以在误差允许范围内求解得到每个约束条件对应的对偶变量,将求解后的对偶变量作为对偶系数用于在线任务的实时决策,从而保证在线任务的决策过程能够稳定进行。
附图说明
图1是一示例性实施例提供的一种分配任务处理方法的流程图。
图2是一示例性实施例提供的一种用户建模界面的示意图。
图3和图4是一示例性实施例提供的两种分布式计算系统的结构示意图。
图5是一示例性实施例提供的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
在社会生活中对于分配任务的决策无处不在。比如在资源分配场景中,分配任务用于从多个资源中确定向目标对象分配的目标资源,将各个资源分配给目标对象可以产生相应的收益,因而需要确定一种资源分配方式,在遵循相应的限制条件的前提下,确定收益最高的目标资源并将其分配给目标对象。针对这种分配场景,可以将各个资源分配给目标对象后所能获取的收益作为决策变量、收益最大化作为优化目标,构建优化模型,以及将资源分配过程中需遵循的一些限制条件,作为该优化模型的约束条件,然后可以求解该优化模型,确定各个资源对应的收益,最后将所述收益最大的资源作为分配给所述目标对象的目标资源。
在一个例子中,假设在金融贷款场景中,在有多家银行的情况下,需要从多家银行 决策出将该用户分配给哪家银行贷款。用户用i表示,银行用j表示,每家银行对每个用户进 行贷款评估,确定一个通过率,用
Figure 531597DEST_PATH_IMAGE002
表示,每个用户对每家银行有风险等级,用
Figure 42213DEST_PATH_IMAGE004
表示, 每家银行有风险金额上限控制,记录为
Figure 290792DEST_PATH_IMAGE006
。现在需要决策每家银行向每个用户审批多少 贷款额度,记为
Figure 30209DEST_PATH_IMAGE008
,从而决定将该用户分配给哪家银行贷款,目标是最大化通过率(即希 望能最大化银行向用户审批的贷款额度)。则上述的贷款分配任务可以描述为:
Figure 313423DEST_PATH_IMAGE010
;(1)
Figure 729360DEST_PATH_IMAGE012
;(2)
其中,决策变量为贷款额度,公式(1)指示的优化模型的优化目标是最大化银行向用户审批的贷款额度,约束条件为每个银行的风险金额不能超过上限(公式(2))。该分配任务的决策结果为将贷款额度最高的银行作为目标银行,将分配任务中的目标用户分配到该目标银行贷款。
在另一个例子中,假设在金融理财场景中,在有多个可选择的理财产品的情况下,需要从多份理财产品中决策出向用户分配的目标理财产品。则该理财分配任务的决策变量为:将各个理财产品分配给用户所能获取的收益。基于理财分配任务的决策变量和影响该决策变量的因素可以构建优化模型,该优化模型的优化目标为最大化所述收益;其中,影响该决策变量的因素可以作为优化模型中的目标系数,该目标系数可依据实际应用场景进行具体设置,比如各个理财产品均对应有预期收益率,该目标系数与所述预期收益率有关。理财产品分配过程中可能存在一些需遵循的限制条件,比如每个理财产品对应有最低投资金额限制、每个理财产品对应有最低持有时长限制,用户打算投资的金额上限、和/或用户打算持有理财产品的时长上限等等,可以根据这些限制条件构建所述优化模型的约束条件,然后可以求解该优化模型,确定各个理财产品对应的收益,最后将所述收益最大的理财产品作为分配给用户的目标理财产品。
在相关技术中,可以将分配任务的决策处理过程形式化表达成一优化模型,通过求解优化模型以获得分配任务的决策结果。在分配任务的优化模型难以求解的情况下,其中一种方法是采用原始对偶(primal-dual)模型进行决策,即将分配任务的优化模型转换为对偶模型,通过求解对偶模型获得决策结果。
针对于在线分配任务,相关决策平台需基于在线分配任务的任务数据进行实时决策,比如上述的金融贷款场景,相关决策平台在收到一个用户的在线分配任务的处理请求的情况下,需要实时处理并给出处理结果。如果通过求解在线分配任务的对偶模型来获得处理结果,则需要先确定对偶模型中的对偶系数。
本说明书实施例提供了一种分配任务处理方法,实现基于若干历史分配任务来预先求解出对偶系数,以便后续用于实时决策在线分配任务,从而有利于提高处理效率,并且使用交替方向乘子法来求解基于若干历史分配任务的历史数据集合构建的无约束的目标优化模型(如拉格朗日模型或者增广拉格朗日模型),其迭代求解方式可以在约束误差满足预设误差的情况下即可停止迭代,不要求约严格约束,则即使在分配任务的原始优化模型无可行解的情况下也可以在误差允许范围内求解得到每个约束条件对应的对偶变量,将求解后的对偶变量作为对偶系数用于在线任务的实时决策,从而保证在线任务的决策过程能够稳定进行。
在一些实施例中,本说明书提供的分配任务处理方法可由电子设备来执行,所述电子设备包括但不限于计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理或者服务器等具有数据处理能力的设备。示例性的,所述电子设备包括有存储器和处理器,所述存储器上存储有所述分配任务处理方法的可执行指令,以便处理器在执行所述可执行指令时能够实现所述分配任务处理方法。示例性的,所述分配任务处理方法可以封装成一计算机程序产品,并集成在所述电子设备中。
请参阅图1,图1为本申请实施例提供的一种分配任务处理方法的流程示意图,所述分配任务用于从多个资源中确定向目标对象分配的目标资源;所述分配任务的决策变量为:各个资源分配给目标对象所能获取的收益;所述原始优化模型的优化目标为:最大化所述收益;所述分配任务的决策结果为:将所述收益最大的资源作为分配给所述目标对象的目标资源。所述方法包括:
S101,基于用户建模界面中的输入数据,确定分配任务的原始优化模型和约束条件。
S102,引入与所述约束条件相关的对偶变量。
S103,根据所述原始优化模型、所述约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量,构建无约束的目标优化模型。
S104,利用交替方向乘子法迭代求解所述目标优化模型,直到最后一轮迭代的约束误差满足预设误差;其中,迭代后的对偶变量作为对偶系数用于实时决策在线分配任务。
在一些实施例中,每个所述分配任务包括的决策变量的数量可以根据所述资源的数量确定。示例性的,假设存在有3个资源,分别为资源A、资源B和资源C,则一个所述分配任务的决策变量为3个,分别为将资源A分配给目标对象所能获得的收益、将资源B分配给目标对象所能获得收益和将资源C分配给目标对象所能获得的收益。
所述分配任务的决策变量为:各个资源分配给目标对象所能获取的收益;所述原始优化模型的优化目标为:最大化所述收益;所述分配任务的处理结果为:将所述收益最大的资源作为分配给所述目标对象的目标资源。所述原始优化模型包括影响所述分配任务的决策变量(或者说影响优化目标)的目标系数;所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;所述目标系数、约束系数和约束向量可依据实际应用场景进行具体设置,本实施例对此不做任何限制。
在一个例子中,以上述的金融贷款场景为例,假设需要从2家银行确定目标银行,以便将用户分配到目标银行贷款;其中,所述分配任务的决策变量为:各个银行审批给用户的贷款额度;所述分配任务的原始优化模型的优化目标为:最大化所述贷款额度;所述分配任务的决策结果为:将所述审批额度最大的银行作为目标银行,将用户分配待该目标银行贷款。所述分配任务有2个决策变量:其中一个决策变量为其中一个银行审批给用户的贷款额度,另一个决策变量为另一个银行审批给用户的贷款额度。所述原始优化模型中影响所述决策变量(或者说所述优化目标)的目标系数为每家银行对每个用户的贷款通过率。所述原始优化模型对应的约束条件中的约束系数为每个用户对每家银行的风险等级,约束向量为每家银行的风险金额上限。
在一些实施例中,所述方法可由电子设备来执行,所述电子设备包括有用户建模界面,所述电子设备可以基于用户建模界面中的输入数据,确定分配任务的原始优化模型和约束条件。示例性的,请参阅图2,所述用户建模界面包括有决策变量输入组件、优化目标输入组件以及约束条件输入组件。用户建模界面中的输入数据可以包括用于描述所述决策变量的信息、用于描述所述优化目标的信息、以及用于描述所述约束条件的信息。
所述决策变量输入组件用于供用户输入描述决策变量的信息,比如在上述的金融 贷款场景中,用户可以通过决策变量输入组件指示i为用户,j为银行,决策变量
Figure 730815DEST_PATH_IMAGE008
为每家 银行向每个用户审批的贷款额度;又比如在上述的金融理财场景中,用户可以通过决策变 量输入组件指示i为用户,j为理财产品,决策变量
Figure 772458DEST_PATH_IMAGE014
为每个理财产品能够为用户带来的 收益。
所述优化目标输入组件用于供用户输入描述优化目标的信息,所述描述优化目标 的信息包括影响所述决策变量(或者说影响所述优化目标)的目标系数以及所述优化目标 的运算方式。比如在上述的金融贷款场景中,用户可以通过决策变量输入组件指示所述目 标系数为每家银行对每个用户的贷款通过率
Figure 910178DEST_PATH_IMAGE002
,以及优化目标的运算方式为最大化 (max)处理。
所述约束条件输入组件用于供用户输入描述约束条件的信息;所述描述约束条件 的信息包括有约束所述决策变量的约束系数、约束向量以及约束关系(比如等于关系、大于 关系或者小于关系)。其中,所述约束条件包括有等式约束条件和/或不等式约束条件。比如 在上述的金融贷款场景中,约束系数为每个用户对每家银行的风险等级
Figure 497017DEST_PATH_IMAGE004
,约束向量为 每家银行的风险金额上限
Figure 720188DEST_PATH_IMAGE015
,约束关系为小于或等于关系,则有
Figure 191621DEST_PATH_IMAGE016
可以理解的是,图2所示的用户建模界面仅为示例性说明,并不构成为输入方式的限制,可依据实际应用场景进行具体设置。
电子设备在获取用户建模界面中的输入数据之后,可以基于描述决策变量的信息 和描述优化目标的信息确定分配任务的原始优化模型的表示形式,以及可以基于描述决策 变量的信息和描述约束条件的信息确定分配任务的约束条件的表示形式。例如在上述的金 融贷款场景中,确定的分配任务的原始优化模型的表示形式为
Figure 59214DEST_PATH_IMAGE010
,以及确 定的分配任务的约束条件的表示形式为
Figure 957899DEST_PATH_IMAGE012
在一些实施例中,在确定分配任务的原始优化模型的表示形式和约束条件的表示形式之后,为了方便求解,可以将带约束的原始优化模型转化为无约束的目标优化模型,电子设备引入与所述约束条件相关的对偶变量,然后根据所述原始优化模型、所述约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量,构建无约束的目标优化模型。其中,所述无约束的目标优化模型的优化目标与所述原始优化模型的优化目标一致。本实施例将带约束的原始优化模型转化为无约束的目标优化模型,从而有利于提高模型求解效率。
在一些实施例中,所述电子设备可以利用引入的对偶变量将所述约束条件耦合到所述原始优化模型,从而获取无约束的目标优化模型。示例性的,所述目标优化模型可以是拉格朗日模型或者增广拉格朗日模型。所述目标优化模型包括原始优化模型项和约束项,所述原始优化模型项根据所述原始优化模型、若干历史分配任务对应的历史数据集合和所述历史分配任务的决策变量确定,所述约束项可以根据所述约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量确定。
在一个例子中,以上述的金融贷款场景为例,假设引入的对偶变量为λ,针对于原 始优化模型的表示形式如
Figure 793000DEST_PATH_IMAGE017
,以及约束条件的表示形式如
Figure 536965DEST_PATH_IMAGE018
; 可以获得转换为如下表示形式的无约束的目标优化模型:
Figure 288758DEST_PATH_IMAGE020
。所述目标优化模型需要求解的变量包括所述历史分配任务的决策变量和引入的对偶变 量。
在一些实施例中,在获取无约束的目标优化模型之后,所述电子设备可以使用交替方向乘子法(Alternating Direction Method of Multipliers,ADMM)迭代求解所述目标优化模型,直到最后一轮迭代的约束误差满足预设误差。示例性的,所述电子设备可以利用交替方向乘子法将所述目标优化模型分解为多个并行的子模型,并对多个所述子模型进行迭代优化直到最后一轮迭代的约束误差满足预设误差;其中,不同的子模型用于求解所述目标优化模型中的不同变量;所述目标模型中的变量包括决策变量和对偶变量。本实施例使用ADMM算法将目标优化模型分解成多个并行的子模型来求解,可以加快目标优化模型的求解速度,并且其迭代求解方式可以在约束误差满足预设误差的情况下即可停止迭代,不要求约严格约束,则即使在分配任务的原始优化模型无可行解的情况下也可以在误差允许范围内求解得到每个约束条件对应的对偶变量,将求解后的对偶变量作为对偶系数用于在线任务的实时决策,从而保证在线任务的决策过程能够稳定进行。
示例性的,在构建目标优化模型时,还可以添加一个惩罚项,比如,可以构建一个包括对角矩阵的二次项,该对角矩阵包括有惩罚变量,然后基于添加有对偶变量的约束项、决策项以及该二次项(惩罚项)构建目标优化模型,比如,可以将上述项求和得到该目标优化模型。
在一些实施例中,考虑到相关技术中在利用ADMM算法求解分配任务时,一般由用户手动完成优化模型形式的转换,比如,用户在基于分配任务的原始优化问题构建优化模型时,即需要将优化模型构建成算法可求解的模型,这种方式比较繁琐,使得分配任务的处理效率较低,要求用户既要对业务的原始优化问题比较了解,也要对算法的实现原理比较了解,并且容易出错。基于此,本说明书实施例实现用户仅需在用户建模界面中输入与分配任务的原始优化模型构建过程相关的数据,以便电子设备确定分配任务的原始优化模型和约束条件,所述原始优化模型包括影响所述分配任务的决策变量的目标系数,所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;进而电子设备可以根据所述目标系数、所述约束系数和所述约束向量分别从所述历史数据集合中,自动提取若干历史分配任务的决策变量对应的目标系数矩阵、约束系数矩阵和约束向量矩阵;从而根据所述目标系数矩阵、所述约束系数矩阵、所述约束向量矩阵、所述原始优化模型、所述约束条件、所述若干历史分配任务的决策变量以及引入的对偶变量,自动构建无约束的目标优化模型。本实施例实现从原始优化模型到目标优化模型的自动转换,减少了用户的操作步骤,也有利于提高求解结果的准确性。
其中,所述目标系数矩阵为N×1维矩阵,N为所述若干历史分配任务中包括的决策变量的数量;所述约束系数矩阵为M×N维的矩阵,M为约束条件的数量,N为所述若干历史分配任务中包括的决策变量的数量;所述约束向量矩阵为M×1维矩阵,M为约束条件的数量,其中,M,N均为大于0的整数。
更详细地说,所述目标优化模型包括原始优化模型项和约束项;所述原始优化模型项根据所述原始优化模型、所述若干历史分配任务的决策变量和所述目标系数矩阵生成;所述约束项根据所述约束条件、所述若干历史分配任务的决策变量、所述约束系数矩阵、所述约束向量矩阵和所述对偶变量生成。
在一些实施例中,为了进一步提高在线分配任务的处理准确性,考虑到目标对象的分布类型的差异性,在求解对偶系数时,获取的历史数据集合中各个历史分配任务的目标对象所属类型相同,从而求解得到的对偶系数与该类型的目标对象高度匹配,有利于提高使用对偶系数处理具有该类型的目标对象的在线分配任务的准确性。
示例性的,针对于所述目标对象所属类型不同的多个历史数据集合,电子设备可以分别执行构建无约束的目标优化模型(S102)以及利用交替方向乘子法迭代求解所述目标优化模型(S103)的步骤,从而获取不同类型的目标对象分别对应的对偶系数;其中,不同类型的目标对象分别对应的对偶系数用于实时处理具有对应类型目标对象的在线分配任务。比如,在获取不同类型的目标对象分别对应的对偶系数,可以预存不同类型的目标对象与对偶系数的映射关系;在处理在线分配任务的过程中,可以根据在线分配任务的目标对象所属类型从所述映射关系中确定对应的目标对偶系数,以便使用目标对偶系数实时处理该在线分配任务,实现提高在线分配任务的处理准确性。
在一个例子中,仍然以上述的金融贷款场景为例,比如用户可以根据风险等级划分为低风险人群、中风险人群和高风险人群,针对于属于不同风险类型的用户,银行对于该用户的审批通过率也有所不同。因此,可以针对于低风险人群、中风险人群和高风险人群分别对应的3个不同的历史数据集合,电子设备可以分别执行构建无约束的目标优化模型(S102)以及利用交替方向乘子法迭代求解所述目标优化模型(S103)的步骤,从而获取3个风险类型分别对应的对偶系数。则在在线分配任务处理过程中,比如在处理目标对象属于低风险类型的在线分配任务时,可以获取低风险类型对应的对偶系数来处理该在线分配任务,实现提高在线分配任务的处理准确性。
在另一个例子中,以上述的金融理财场景为例,比如用户可以根据投资习惯划分为保守投资人群、稳健投资人群和激进投资人群,针对于保守投资人群、稳健投资人群和激进投资人群分别对应的3个不同的历史数据集合,电子设备可以分别执行构建无约束的目标优化模型(S102)以及利用交替方向乘子法迭代求解所述目标优化模型(S103)的步骤,从而获取3个投资类型分别对应的对偶系数。则在在线分配任务处理过程中,比如在处理目标对象属于稳健投资类型的在线分配任务时,可以获取稳健投资类型对应的对偶系数来处理该在线分配任务,实现提高在线分配任务的处理准确性。
在一些实施例中,考虑到一个所述历史数据集合中包括的历史分配任务的数量较大的情况下,包含的决策变量也较多,针对于大规模历史分配任务所构建的目标优化模型需要花费的求解时间也比较长。因此,为了提高求解效率,本实施例实现将历史数据集合划分为多个数据分片,每个数据分片包括部分历史分配任务的任务数据,并采用分布式计算系统并行求解各个数据分片对应的目标优化子模型。所述目标优化子模型基于所述原始优化模型、所述约束条件、所述数据分片、所述数据分片中的决策变量以及引入的所述对偶变量构建得到,所述目标优化子模型的构建过程与所述目标优化模型的构建过程相同,区别在于所述目标优化子模型利用所述数据分片(即历史数据集合中的一部分数据)构建,所述目标优化子模型所需求解的决策变量更少;不同目标优化子模型所需求解的决策变量不同。
请参阅图3,在将所述历史数据集合划分成多个数据分片的情况下,所述方法可以应用于分布式计算系统,所述分布式计算系统包括控制节点10以及若干个工作节点20。所述控制节点10和所述工作节点20可以运行在物理设备或者虚拟设备上。所述控制节点10和若干个工作节点20可以运行在相同或不同的设备中。
每个所述工作节点20获取利用其中一个所述数据分片构建的目标优化子模型;其中,所述目标优化子模型可以由所述工作节点20构建,也可以由其他设备构建完成后发送给所述工作节点20,本实施例在此不做任何限制。
每个所述工作节点20在每轮迭代过程中,从所述控制节点10中获取所述对偶变量经上一轮迭代更新的值,根据所述对偶变量的值求解所述目标优化子模型中的决策变量,并将根据所述决策变量的求解结果和所述决策变量的约束系数确定的约束值发送给所述控制节点10;其中,在首轮迭代过程中,所述控制节点10将所述对偶变量的值初始化为预设值,比如初始化为0。
所述控制节点10在每轮迭代过程中,接收各个所述工作节点20发送的所述约束值,基于各个所述工作节点20的约束值的累加结果和所述决策变量的约束向量之间的差异确定约束误差;在所述约束误差不满足预设误差的情况下,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点20。以及在所述约束误差满足预设误差的情况下,结束迭代过程,则迭代后的对偶变量可以作为对偶系数用于实时处理在线分配任务。
本实施例中,通过将历史数据集合划分为多个数据分片,由多个工作节点20并行求解利用各个所述数据分片构建的目标优化子模型,有利于提高求解效率。
在一些实施例中,由于各个目标优化子模型在求解过程中需要多轮迭代求解,且在迭代求解目标优化子模型的过程中涉及的计算量也较大,因此,为了提高处理效率,本实施例提供了一种新的分布式计算框架,在原有的master-slave(主从模式)的分布式计算框架下,增加了计算能力较高的算子节点11,利用该算子节点11来处理迭代求解目标优化子模型过程中,一些计算量较大,处理较为耗时的任务,从而提高处理效率。
请参阅图4,所述控制节点10包括主节点12和算子节点11;所述主节点12和所述算子节点可以是不同的物理设备或者不同的虚拟设备。
所述算子节点11在每轮迭代过程中,将确定的所述约束误差发送给所述主节点12,并在接收到所述主节点12发送的指示迭代未终止的指示信息时,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点20。所述主节点12接收所述算子节点11发送的约束误差,在所述约束误差不满足预设误差的情况下向所述算子节点发送指示迭代未终止的指示信息。以及在所述约束误差满足预设误差的情况下,结束迭代过程,则迭代后的对偶变量可以作为对偶系数用于实时处理在线分配任务。
以下结合一个具体的实施例来解释本申请实施例的分布式计算系统。
假设历史数据集合中包括有2亿个历史分配数据,假设有2亿个用户,用i表示,需 要向10家银行贷款,用j表示。每家银行会对每个用户进行贷款评估,确定一个通过率,用
Figure 92766DEST_PATH_IMAGE002
表示,每个用户对每家银行有风险等级,用
Figure 415163DEST_PATH_IMAGE004
表示,每家银行有风险金额上限控制,记 为Rj。假设现在需要决策每家银行向每个用户审批多少贷款额度,记为
Figure 962819DEST_PATH_IMAGE008
,目标是最大化 通过率(即希望用户能最大化审批额度)。
针对上述分配任务构建的原始优化模型,比如,该原始优化模型可以通过公式(1) 表示,约束条件可以通过以下公式表示:(1)
Figure 195218DEST_PATH_IMAGE022
;(2)
Figure 311072DEST_PATH_IMAGE023
。即原始优 化模型(1)的优化目标是最大化用户通过率,约束条件包括两种:(2)每个银行的风险金额 不能超过上限。
由于数据量较大,决策变量
Figure 730552DEST_PATH_IMAGE024
多达20亿,为了提高处理效率,因而可以借助分布 式计算系统求解上述模型。如图4所示,分布式计算系统包括一个主节点、一个算子节点和 若干个工作节点(假设有5个工作节点),为了提高处理效率,用户可以将业务数据划分成多 个数据分片,比如,可以划分成5个数据分片,每个数据分片包括0.4亿个历史分配任务,每 个工作节点获取其中一个所述数据分片构建的无约束的目标优化子模型,所述目标优化子 模型基于所述原始优化模型、所述约束条件、所述数据分片、所述数据分片中的决策变量以 及引入的所述对偶变量构建得到。每个数据分片包括部分历史分配任务的任务数据,每个 目标优化子模型包含一部分决策变量,比如,一共有20亿个决策变量,每个工作节点构建的 目标模型包含4亿的决策变量。
每个工作节点在每轮迭代过程中,从所述控制节点中获取所述对偶变量经上一轮 迭代更新的值,根据所述对偶变量的值求解所述目标优化子模型中的决策变量,并将根据 所述决策变量的求解结果和所述决策变量的约束系数确定的约束值
Figure 206533DEST_PATH_IMAGE026
发送给所述控 制节点;在首轮迭代过程中,所述控制节点将所述对偶变量的值初始化为预设值;每个工作 节点发送的约束值为该数据节点需要求解的4亿的决策变量对应的约束值之和。
每个算子节点在每轮迭代过程中,基于各个所述工作节点的约束值的累加结果和 所述决策变量的约束向量之间的差异确定约束误差,即
Figure 27858DEST_PATH_IMAGE028
,将确定的所述约束误 差发送给所述主节点,并在接收到所述主节点发送的指示迭代未终止的指示信息时,根据 所述约束误差更新所述对偶变量的值并发送给各个所述工作节点,例如
Figure 836587DEST_PATH_IMAGE030
,即第t+1轮的对偶变量的值为第t轮的对偶变量的值加上预设乘 积的结果,该预设乘积为所述约束误差与指定系数的乘积。
所述主节点接收所述算子节点发送的约束误差,确定约束误差是否满足预设误 差,比如
Figure 8942DEST_PATH_IMAGE032
,b可依据实际应用场景进行具体设置,在
Figure 23035DEST_PATH_IMAGE034
的情况下向 所述算子节点发送指示迭代未终止的指示信息。在
Figure 964446DEST_PATH_IMAGE035
的情况下结束迭代过程, 则迭代后的对偶变量可以作为对偶系数用于实时处理在线分配任务。
在一些实施例中,在处理在线分配任务的过程中,响应于在线分配任务的决策请求,可以根据所述对偶系数、所述原始优化模型、所述约束条件、所述在线分配任务的目标系数、约束系数和约束变量,构建在线分配任务的对偶模型,每个决策变量均对应有一对偶模型;然后根据所述对偶模型的求解结果,确定所述在线分配任务的处理结果;示例性的,所述决策变量指示各个资源分配给目标对象所能获取的收益,每个决策变量对应的对偶模型的求解结果为最大化后的所述收益,可以将收益最大的资源作为分配给所述目标对象的目标资源。
在另一些实施例中,为了提高在线任务的处理效率,可以根据所述原始优化模型、所述约束条件和所述迭代后的对偶变量的求解结果,生成数据模板;所述数据模板指示有处理分配任务所需的系数;所述系数包括目标系数、约束系数以及对偶系数;所述数据模板还包括所述对偶系数的系数值;所述数据模板用于快速获取在线分配任务相关的处理数据,从而有利于提高在线分配任务的处理效率。
为了提高在线分配任务的处理效率,还可以预先根据所述对偶模型确定针对于所 述分配任务中的评估规则。在一个例子中,比如原始优化模型的表示形式为:
Figure 812316DEST_PATH_IMAGE037
;约束条件包括两种,(1)对每个j有个总和约束(如上述的银行贷款例子中, 银行有风险金额上限控制),即
Figure 81755DEST_PATH_IMAGE039
;(2)对所有i,j的全局约束,即
Figure DEST_PATH_IMAGE041
。则原始优化模型的对偶模型的表示形式如下:
Figure DEST_PATH_IMAGE043
。在利用历史数据集 合求出对偶系数
Figure DEST_PATH_IMAGE045
之后,对于每一个决策变量
Figure 945543DEST_PATH_IMAGE008
,则有
Figure DEST_PATH_IMAGE047
。对于每个用户,选择的j如下:
Figure DEST_PATH_IMAGE049
。假设默认一个用户i必须分配 到一个银行j,即
Figure DEST_PATH_IMAGE051
=1,则在上述的选择j的过程中,只需要
Figure DEST_PATH_IMAGE053
最大,即可确定相应的j是最大的,即是说,可以基于上述的对偶模型得到如下的评估规则:
Figure DEST_PATH_IMAGE054
,该评估规则根据分配任务中每个资源对应的目标系数、约束 系数和对偶系数来确定。当然,上述的减法运算仅为示例性说明,具体运算方式可依据实际 应用场景进行具体设置,比如可能是加法或者乘法,或者比值等等。
在处理在线分配任务的过程中,电子设备可以响应于在线分配任务的处理请求,根据所述数据模板读取所述在线分配任务中每个资源对应的系数值;然后根据预先确定的评估规则和所述每个资源对应的系数值,确定每个资源的评估结果;其中,所述评估规则基于所述原始优化模型对应的对偶模型确定;所述评估结果指示将所述资源分配给目标对象所能获得的收益;基于每个所述资源的评估结果,从所述多个资源中确定分配给所述目标对象的目标资源,所述目标资源为所述收益最大的资源。本实施例中,基于预先确定的数据快速获取在线分配任务相关的处理数据,以及基于预先确定的评估规则快速确定每个资源分配给目标对象后的收益情况,有利于缩短处理时长,提高在线分配任务的处理效率。
在一些实施例中,所述数据模板中还指示有所述目标系数的系数值存储地址和约束系数的系数值存储地址;所述系数值存储地址从用户建模界面的输入数据中获取;比如用户在优化目标输入组件中指示目标系数时,还指示有目标系数的系数值存储地址,以便电子设备从该目标系数的系数值存储地址获取相关的系数值参与运算;比如用户在约束条件输入组件中指示约束系数时,还指示有约束系数的系数值存储地址,以便电子设备从该约束系数的系数值存储地址获取相关的系数值参与运算。在处理在线分配任务的过程中,所述电子设备在根据所述数据模板读取所述在线分配任务中每个资源对应的系数值,可以从所述数据模板指示的目标系数的系数值存储地址中读取所述在线分配任务中每个资源对应的目标系数的系数值;以及,从所述数据模板指示的约束系数的系数值存储地址中读取所述在线分配任务中每个资源对应的约束系数的系数值。实现在线分配任务相关数据的快速读取,从而有利于提高在线分配任务的处理效率。
以上实施例中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本说明书公开的范围。
相应的,请参阅图3,本说明书实施例还提供了一种分布式计算系统,所述分布式计算系统用于根据历史数据集合确定分配任务的对偶系数;所述分配任务用于从多个资源中确定向目标对象分配的目标资源;所述历史数据集合能够被划分为多个数据分片,每个数据分片包括部分历史分配任务的任务数据;所述分配任务的原始优化模型和约束条件基于用户建模界面中的输入数据确定;所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;
所述系统包括控制节点10以及若干个工作节点20;
每个所述工作节点20用于:获取利用其中一个所述数据分片构建的无约束的目标优化子模型;所述目标优化子模型基于所述原始优化模型、所述约束条件、所述数据分片、所述数据分片中的决策变量以及引入的对偶变量构建得到;以及,在每轮迭代过程中,从所述控制节点10中获取所述对偶变量经上一轮迭代更新的值,根据所述对偶变量的值求解所述目标优化子模型中的决策变量,并将根据所述决策变量的求解结果和所述决策变量的约束系数确定的约束值发送给所述控制节点10;其中,在首轮迭代过程中,所述控制节点10将所述对偶变量的值初始化为预设值;
所述控制节点10用于:在每轮迭代过程中,接收各个所述工作节点20发送的所述约束值,基于各个所述工作节点20的约束值的累加结果和所述决策变量的约束向量之间的差异确定约束误差;在所述约束误差不满足预设误差的情况下,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点20。
本实施例中,将历史数据集合划分为多个数据分片,由多个工作节点20并行求解利用各个所述数据分片构建的目标优化子模型,有利于提高求解效率。
在一些实施例中,请参阅图4,所述控制节点10包括主节点12和算子节点11;
所述算子节点11用于在每轮迭代过程中,将确定的所述约束误差发送给所述主节点12,并在接收到所述主节点12发送的指示迭代未终止的指示信息时,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点20。其中,算子节点11所在设备的运行资源大于主节点所在的设备的运行资源。所述主节点12用于接收所述算子节点11发送的约束误差,在所述约束误差不满足预设误差的情况下向所述算子节点发送指示迭代未终止的指示信息。本实施例中,增加了计算能力较高的算子节点11,利用该算子节点11来处理迭代求解目标优化子模型过程中,一些计算量较大,处理较为耗时的任务,从而提高处理效率。
相应的,请参阅图5,本说明书实施例还提供了一种电子设备30,所述电子设备包括:
处理器31;
用于存储处理器31可执行指令的存储器32;
其中,所述处理器31通过运行所述可执行指令以实现上述任一项所述的方法。
所述处理器31执行所述存储器32中包括的可执行指令,所述处理器31可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路 (Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器32存储分配任务处理方法的可执行指令,所述存储器32可以包括至少一种类型的存储介质,存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器 (PROM)、磁性存储器、磁盘、光盘等等。而且,设备可以与通过网络连接执行存储器的存储功能的网络存储装置协作。存储器32可以是设备30的内部存储单元,例如设备30的硬盘或内存。存储器32也可以是设备30的外部存储设备,例如设备30上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。进一步地,存储器32还可以既包括设备30的内部存储单元也包括外部存储设备。存储器32用于存储计算机程序以及设备所需的其他程序和数据。存储器32还可以用于暂时地存储已经输出或者将要输出的数据。
电子设备30可以是桌上型计算机、笔记本、掌上电脑、服务器、云服务器及手机等计算设备。设备可包括,但不仅限于,处理器31、存储器32。本领域技术人员可以理解,图5仅仅是电子设备30的示例,并不构成对电子设备30的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如设备还可以包括输入输出设备、网络接入设备、总线等。
上述设备中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由装置的处理器执行以完成上述方法。例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当存储介质中的指令由终端的处理器执行时,使得终端能够执行上述方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。

Claims (13)

1.一种分配任务处理方法,所述分配任务用于从多个资源中确定向目标对象分配的目标资源;所述方法包括:
基于用户建模界面中的输入数据,确定分配任务的原始优化模型和约束条件;所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;
引入与所述约束条件相关的对偶变量;
根据所述原始优化模型、所述约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量,构建无约束的目标优化模型;
利用交替方向乘子法迭代求解所述目标优化模型,直到最后一轮迭代的约束误差满足预设误差;其中,迭代后的对偶变量作为对偶系数用于实时处理在线分配任务;
其中,所述历史数据集合能够被划分为多个数据分片,每个数据分片包括部分历史分配任务的任务数据;在将所述历史数据集合划分成多个数据分片的情况下,所述方法应用于分布式计算系统,所述分布式计算系统包括控制节点以及若干个工作节点;
每个所述工作节点获取利用其中一个所述数据分片构建的无约束的目标优化子模型;以及,在每轮迭代过程中,从所述控制节点中获取所述对偶变量经上一轮迭代更新的值,根据所述对偶变量的值求解所述目标优化子模型中的决策变量,并将根据所述决策变量的求解结果和所述决策变量的约束系数确定的约束值发送给所述控制节点;其中,在首轮迭代过程中,所述控制节点将所述对偶变量的值初始化为预设值;
所述控制节点在每轮迭代过程中,接收各个所述工作节点发送的所述约束值,基于各个所述工作节点的约束值的累加结果和所述决策变量的约束向量之间的差异确定约束误差;在所述约束误差不满足预设误差的情况下,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点。
2.根据权利要求1所述的方法,所述分配任务包括的决策变量的数量根据所述资源的数量确定;
所述分配任务的决策变量为:各个资源分配给目标对象所能获取的收益;
所述原始优化模型的优化目标为:最大化所述收益;
所述分配任务的处理结果为:将所述收益最大的资源作为分配给所述目标对象的目标资源。
3.根据权利要求1或2所述的方法,所述原始优化模型包括影响所述分配任务的决策变量的目标系数;所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;
所述根据所述原始优化模型、所述约束条件、若干历史分配任务对应的历史数据集合、所述历史分配任务的决策变量以及引入的所述对偶变量,构建无约束的目标优化模型,包括:
根据所述目标系数、所述约束系数和所述约束向量分别从所述历史数据集合中,提取若干历史分配任务的决策变量对应的目标系数矩阵、约束系数矩阵和约束向量矩阵;
根据所述目标系数矩阵、所述约束系数矩阵、所述约束向量矩阵、所述原始优化模型、所述约束条件、所述若干历史分配任务的决策变量以及引入的对偶变量,构建无约束的目标优化模型。
4.根据权利要求3所述的方法,所述目标优化模型包括原始优化模型项和约束项;
所述原始优化模型项根据所述原始优化模型、所述若干历史分配任务的决策变量和所述目标系数矩阵生成;
所述约束项根据所述约束条件、所述若干历史分配任务的决策变量、所述约束系数矩阵、所述约束向量矩阵和所述对偶变量生成;其中,所述约束项包括有等式约束项和/或不等式约束项。
5.根据权利要求1所述的方法,在所述历史数据集合中,各个历史分配任务的目标对象所属类型相同;
所述方法还包括:
针对于所述目标对象所属类型不同的多个历史数据集合,分别执行构建无约束的目标优化模型以及利用交替方向乘子法迭代求解所述目标优化模型的步骤,获取不同类型的目标对象分别对应的对偶系数;其中,不同类型的目标对象分别对应的对偶系数用于实时处理具有对应类型目标对象的在线分配任务。
6.根据权利要求1所述的方法,所述控制节点包括主节点和算子节点;
所述方法还包括:
所述算子节点在每轮迭代过程中,将确定的所述约束误差发送给所述主节点,并在接收到所述主节点发送的指示迭代未终止的指示信息时,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点;
所述主节点接收所述算子节点发送的约束误差,在所述约束误差不满足预设误差的情况下向所述算子节点发送指示迭代未终止的指示信息。
7.根据权利要求1所述的方法,所述原始优化模型包括影响所述分配任务的决策变量的目标系数;所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;
所述方法还包括:
根据所述原始优化模型、所述约束条件和所述迭代后的对偶变量的求解结果,生成数据模板;所述数据模板指示有处理分配任务所需的系数;所述系数包括目标系数、约束系数以及对偶系数;所述数据模板还包括所述对偶系数的系数值;所述数据模板用于获取在线分配任务相关的处理数据。
8.根据权利要求7所述的方法,还包括:
响应于在线分配任务的处理请求,根据所述数据模板读取所述在线分配任务中每个资源对应的系数值;
根据预先确定的评估规则和所述每个资源对应的系数值,确定每个资源的评估结果;其中,所述评估规则基于所述原始优化模型对应的对偶模型确定;所述评估结果指示将所述资源分配给目标对象所能获得的收益;
基于每个所述资源的评估结果,从所述多个资源中确定分配给所述目标对象的目标资源。
9.根据权利要求1所述的方法,所述用户建模界面包括有决策变量输入组件、优化目标输入组件以及约束条件输入组件;
所述输入数据包括:从所述决策变量输入组件获取的描述决策变量的信息、从所述、优化目标输入组件获取的描述优化目标的信息、以及从所述及约束条件输入组件获取的描述约束条件的信息;
所述分配任务的原始优化模型基于所述描述决策变量的信息和所述描述优化目标的信息确定;所述分配任务的约束条件基于所述描述决策变量的信息和所述描述约束条件的信息确定。
10.一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1至9中任一项所述的方法。
11.一种分布式计算系统,所述分布式计算系统用于根据历史数据集合确定分配任务的对偶系数;所述分配任务用于从多个资源中确定向目标对象分配的目标资源;所述历史数据集合能够被划分为多个数据分片,每个数据分片包括部分历史分配任务的任务数据;所述分配任务的原始优化模型和约束条件基于用户建模界面中的输入数据确定;所述约束条件包括约束所述分配任务的决策变量的约束系数和约束向量;
所述系统包括控制节点以及若干个工作节点;
每个所述工作节点用于:获取利用其中一个所述数据分片构建的无约束的目标优化子模型;所述目标优化子模型基于所述原始优化模型、所述约束条件、所述数据分片、所述数据分片中的决策变量以及引入的对偶变量构建得到;以及,在每轮迭代过程中,从所述控制节点中获取所述对偶变量经上一轮迭代更新的值,根据所述对偶变量的值求解所述目标优化子模型中的决策变量,并将根据所述决策变量的求解结果和所述决策变量的约束系数确定的约束值发送给所述控制节点;其中,在首轮迭代过程中,所述控制节点将所述对偶变量的值初始化为预设值;
所述控制节点用于:在每轮迭代过程中,接收各个所述工作节点发送的所述约束值,基于各个所述工作节点的约束值的累加结果和所述决策变量的约束向量之间的差异确定约束误差;在所述约束误差不满足预设误差的情况下,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点。
12.根据权利要求11所述的系统,所述控制节点包括主节点和算子节点;
所述算子节点用于:在每轮迭代过程中,将确定的所述约束误差发送给所述主节点,并在接收到所述主节点发送的指示迭代未终止的指示信息时,根据所述约束误差更新所述对偶变量的值并发送给各个所述工作节点;
所述主节点用于:接收所述算子节点发送的约束误差,在所述约束误差不满足预设误差的情况下向所述算子节点发送指示迭代未终止的指示信息。
13.一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如权利要求1至9中任一项所述方法的步骤。
CN202210481654.5A 2022-05-05 2022-05-05 分配任务处理方法、设备、分布式计算系统及存储介质 Active CN114581223B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210481654.5A CN114581223B (zh) 2022-05-05 2022-05-05 分配任务处理方法、设备、分布式计算系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210481654.5A CN114581223B (zh) 2022-05-05 2022-05-05 分配任务处理方法、设备、分布式计算系统及存储介质

Publications (2)

Publication Number Publication Date
CN114581223A CN114581223A (zh) 2022-06-03
CN114581223B true CN114581223B (zh) 2022-07-29

Family

ID=81779416

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210481654.5A Active CN114581223B (zh) 2022-05-05 2022-05-05 分配任务处理方法、设备、分布式计算系统及存储介质

Country Status (1)

Country Link
CN (1) CN114581223B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107370802A (zh) * 2017-07-10 2017-11-21 中国人民解放军国防科学技术大学 一种基于交替方向乘子法的协同存储调度方法
CN110336298A (zh) * 2019-08-17 2019-10-15 广东博慎智库能源科技发展有限公司 一种基于混合智能算法的含分布式电源配网无功规划方法
CN110460036A (zh) * 2019-05-10 2019-11-15 四川大学 一种考虑风电不确定性的交直流配电网分布式优化方法
CN111742335A (zh) * 2020-04-13 2020-10-02 支付宝(杭州)信息技术有限公司 用于优化借款请求的分配的方法和系统
CN112136111A (zh) * 2019-04-24 2020-12-25 阿里巴巴集团控股有限公司 分布式资源分配
CN112188502A (zh) * 2020-09-16 2021-01-05 中国南方电网有限责任公司超高压输电公司 一种变电站监控中前后端协同通信的资源分配方法
CN112861357A (zh) * 2021-02-10 2021-05-28 福州大学 一种多微能网耦合系统分布式协同调度方法及系统
CN113890023A (zh) * 2021-09-29 2022-01-04 西安交通大学 一种综合能源微网分布式经济调度优化方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8606420B2 (en) * 2011-07-15 2013-12-10 International Business Machines Corporation Solving large-scale security-constrained economic dispatch problem in real-time
US10606642B1 (en) * 2014-09-16 2020-03-31 Amazon Technologies, Inc. Dynamic power budgets
CN106712116B (zh) * 2017-03-23 2019-04-09 广西大学 完全分布式的电力系统机组投入配置方法及系统
CN111258724B (zh) * 2020-01-14 2024-02-06 平安银行股份有限公司 一种分布式系统的数据处理方法、装置、设备和存储介质
CN112363714A (zh) * 2020-11-03 2021-02-12 中国建设银行股份有限公司 一种服务组合模型的开发方法、装置、存储介质及设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107370802A (zh) * 2017-07-10 2017-11-21 中国人民解放军国防科学技术大学 一种基于交替方向乘子法的协同存储调度方法
CN112136111A (zh) * 2019-04-24 2020-12-25 阿里巴巴集团控股有限公司 分布式资源分配
CN110460036A (zh) * 2019-05-10 2019-11-15 四川大学 一种考虑风电不确定性的交直流配电网分布式优化方法
CN110336298A (zh) * 2019-08-17 2019-10-15 广东博慎智库能源科技发展有限公司 一种基于混合智能算法的含分布式电源配网无功规划方法
CN111742335A (zh) * 2020-04-13 2020-10-02 支付宝(杭州)信息技术有限公司 用于优化借款请求的分配的方法和系统
CN112188502A (zh) * 2020-09-16 2021-01-05 中国南方电网有限责任公司超高压输电公司 一种变电站监控中前后端协同通信的资源分配方法
CN112861357A (zh) * 2021-02-10 2021-05-28 福州大学 一种多微能网耦合系统分布式协同调度方法及系统
CN113890023A (zh) * 2021-09-29 2022-01-04 西安交通大学 一种综合能源微网分布式经济调度优化方法及系统

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Optimal Parameter Selection for the Alternating Direction Method of Multipliers (ADMM) Quadratic Problems;Euhanna Ghadimi;《IEEE Transactions on Automatic Control》;20150331;第60卷(第3期);全文 *
基于交替方向乘子法的大规模线性多商品流问题求解算法;徐薇等;《计算数学》;20181114(第04期);全文 *
基于交替方向乘子法的源网协同多适应规划;李婷等;《电力建设》;20171101(第11期);全文 *
基于交替方向乘子法的电力系...完全分布式动态经济调度方法;杨青润;《控制理论与应用》;20180531;第35卷(第5期);参见第711-712页 *
基于改进矩不确定分布鲁棒优化算法的多机调频比例决策;周任军等;《电力自动化设备》;20190610(第06期);全文 *

Also Published As

Publication number Publication date
CN114581223A (zh) 2022-06-03

Similar Documents

Publication Publication Date Title
KR102499076B1 (ko) 그래프 데이터 기반의 태스크 스케줄링 방법, 디바이스, 저장 매체 및 장치
WO2022037337A1 (zh) 机器学习模型的分布式训练方法、装置以及计算机设备
Heilig et al. A cloud brokerage approach for solving the resource management problem in multi-cloud environments
CN110851529A (zh) 算力调度方法及相关设备
Wang et al. Integer-ordered simulation optimization using R-SPLINE: Retrospective search with piecewise-linear interpolation and neighborhood enumeration
CN112381216B (zh) 混合图神经网络模型的训练、预测方法和装置
CN109144719B (zh) 移动云计算系统中基于马尔科夫决策过程的协作卸载方法
CN114902273A (zh) 使用gpu优化资源分配的系统和方法
CN113821318A (zh) 一种物联网跨域子任务组合协同计算方法及系统
CN113515672A (zh) 数据处理方法、装置、计算机可读介质及电子设备
CN114971078A (zh) 基于约束性多目标粒子群优化的路径规划方法及相关设备
CN114581223B (zh) 分配任务处理方法、设备、分布式计算系统及存储介质
CN110266770B (zh) 基于博弈论的闲置云资源调度方法和装置
CN114581220A (zh) 数据处理方法、设备及分布式计算系统
CN115016911A (zh) 面向大规模联邦学习的任务编排方法、装置、设备和介质
CN114020469A (zh) 基于边缘节点的多任务学习方法、装置、介质与设备
CN114217933A (zh) 多任务调度方法、装置、设备以及存储介质
Yadav E-MOGWO Algorithm for Computation Offloading in Fog Computing.
Kang et al. Particles resampling scheme using regularized optimal transport for sequential Monte Carlo filters
CN117806835B (zh) 一种任务分配方法、装置及电子设备和存储介质
Valdeira et al. Decentralized em to learn gaussian mixtures from datasets distributed by features
US11916810B1 (en) Resource management
CN116932164B (zh) 一种基于云平台的多任务调度方法及其系统
US20240080255A1 (en) Network traffic control using estimated maximum gap
Majumder et al. Optimal and Effective Resource Management in Edge Computing.

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
GR01 Patent grant
GR01 Patent grant