任务优化方法以及装置与流程

文档序号:30748236发布日期:2022-07-13 08:12阅读:955来源:国知局
任务优化方法以及装置与流程

1.本说明书实施例涉及数据处理技术领域,特别涉及一种任务优化方法。


背景技术:

2.在建模语言软件中,用户通过代数语言的形式将优化模型进行输入,再引入数据,建立优化模型,最后调用优化求解器进行求解。通用建模语言的优势在于对接的求解器非常多,包括通用求解器(如mindopt、gurobi、knitro等)和专用求解器(如osqp等),并且每一个求解器都可以通过设置求解参数来发挥其更好的性能。用户只需要设置option参数即可切换不同的求解器。然而,对于建模语言的使用者来说,往往不能全面地了解每一个求解器的优势和参数设置方法,因此如何在建模语言中自动地帮助用户对实际问题选取合适的求解器和参数是关系到建模语言使用的重要课题。


技术实现要素:

3.有鉴于此,本说明书实施例提供了一种任务优化方法。本说明书一个或者多个实施例同时涉及一种电力资源优化方法,一种任务优化系统,一种任务优化装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
4.根据本说明书实施例的第一方面,提供了一种任务优化方法,包括:
5.对获取到的初始文件进行语义解析得到模型数据;
6.根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息;
7.根据所述目标求解信息对所述模型数据进行求解得到优化结果。
8.根据本说明书实施例的第二方面,提供了一种任务优化装置,包括:
9.解析模块,被配置为对获取到的初始文件进行语义解析得到模型数据;
10.选择模块,被配置为根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息;
11.求解模块,被配置为根据所述目标求解信息对所述模型数据进行求解得到优化结果。
12.根据本说明书实施例的第三方面,提供了一种任务优化系统,所述任务优化系统包括云解析模块、云选择模块和云求解模块;
13.所述云解析模块,被配置为对获取到的初始文件进行语义解析得到模型数据;
14.所述云选择模块,被配置为根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息;
15.所述云求解模块,被配置为根据所述目标求解信息对所述模型数据进行求解得到优化结果,并输出所述优化结果。
16.根据本说明书实施例的第四方面,提供了一种电力资源优化方法,包括:
17.对获取到的电力资源优化任务的初始文件进行语义解析得到电力资源优化模型
数据;
18.根据所述电力资源优化模型数据获取电力资源优化模型特征,并将所述电力资源优化模型特征输入求解器选择模型获得目标求解信息;
19.根据所述目标求解信息对所述电力资源优化模型数据进行求解得到所述电力资源优化任务的优化结果。
20.根据本说明书实施例的第五方面,提供了一种计算设备,包括:
21.存储器和处理器;
22.所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述任务优化方法的步骤。
23.根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述任务优化方法的步骤。
24.根据本说明书实施例的第七方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述任务优化方法的步骤。
25.本说明书实施例提供一种任务优化方法以及装置,其中所述任务优化方法包括:对获取到的初始文件进行语义解析得到模型数据,根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,根据所述目标求解信息对所述模型数据进行求解得到优化结果。通过根据模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,以选择合适的求解器对模型进行求解,提高了优化结果的准确性。
附图说明
26.图1是本说明书一个实施例提供的一种任务优化方法的流程图;
27.图2是本说明书一个实施例提供的一种任务优化方法的处理过程流程图;
28.图3是本说明书一个实施例提供的一种任务优化装置的结构示意图;
29.图4是本说明书一个实施例提供的一种电力资源优化方法的流程图;
30.图5是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
31.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
32.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
33.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类
似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
34.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
35.数学模型:是运用数理逻辑方法和数学语言建构的科学或工程模型。
36.机器学习:是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
37.逻辑回归:又称逻辑回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。例如,探讨引发疾病的危险因素,并根据危险因素预测疾病发生的概率等。
38.决策树(decision tree):是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。
39.深度学习(dl,deep learning):是机器学习(ml,machine learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能。
40.代数建模语言(aml):将复杂的优化模型转化为抽象的代数表达形式在脚本程序中进行输入,并且连接了各个优化求解器。
41.优化求解器:求解优化问题的软件,例如mindopt、gurobi、cplex等。
42.目标函数:一个工程设计问题,常有许多可行的设计方案,优化设计的任务是要找出其中优的一个方案。评价优方案的标准应是在设计中能最好地反映该项设计所要追求的某些特定目标。通常,这些目标可以表示成设计变量的数学函数,这种函数称为目标函数。
43.优化问题在能源电力、电子商务、供应链、云计算、金融、制造业等许多领域中都有着广泛的应用。解决实际的优化问题往往包含优化建模与求解两个步骤。其中,优化求解器是求解优化问题的主要软件,例如mindopt、gurobi、scip等都提供了丰富的接口,用于建立模型求解,然而这种通过程序接口输入优化模型的过程并不直观,往往会耗费用户大量时间和精力,且容易出错。
44.为了简化这一步骤,代数建模语言软件应用而生,其目的是将复杂的优化模型以代数表达形式的方式输入,从而避免调用程序接口等一系列复杂的操作,使得用户可以专注在优化模型建立本身。建模语言往往并不对实际问题进行求解,而是依靠将模型以文件的形式输出,然后根据指令调用各个优化求解器进行求解,不但加快优化模型的开发流程,更有效减少模型输入错误的可能性。
45.因此,代数建模语言软件和优化求解器都是应用优化技术的重要组成部分。一套完整的建模工具套件一般包含上述的代数建模语言sdk、优化求解器sdk以及带有gui的ide等,例如ampl、gams、aimms等。现在的方案中大多是人工选择优化求解器,即,根据需要解决的问题,基于以往的经验选择优化求解器,但是有的时候,对于优化求解器,往往不能全面地了解每一个求解器的优势和参数设置方法,因此如何在建模语言中自动地帮助用户对实际问题选取合适的求解器和参数是关系到建模语言使用的重要课题。
46.基于此,在本方案中,在建模语言中引入机器学习技术,通过对用户输入的优化问题进行分析、识别,从而选择求解器和参数,辅助用户解决实际问题。
47.在本说明书中,提供了一种任务优化方法,本说明书同时涉及一种电力资源优化方法,一种任务优化系统,一种任务优化装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
48.参见图1,图1示出了根据本说明书一个实施例提供的一种任务优化方法的流程图,具体包括以下步骤。
49.步骤102:对获取到的初始文件进行语义解析得到模型数据。
50.其中,初始文件可以包括优化模型文件和数据文件,例如,优化模型文件中包括多个求解函数,如:y=a*x+b,数据文件中包括a和b具体的值;模型数据可以理解为根据初始文件构建好的数学模型的数据,例如文件形式的数据。
51.在实际应用中,需要对初始文件中的文本信息进行识别,即,针对代数语言的进行解析,以得到代数语言的含义,并根据所述识别得到的文本含义建立优化模型。
52.具体地,所述对获取到的初始文件进行语义解析得到模型数据,包括:
53.对所述初始文件中的模型信息进行词法解析、以及语法解析得到模型数据,其中,所述初始文件包括模型文件和数据文件。
54.其中,模型信息可以理解为初始文件中的文本,例如:a*x+b;词法解析可以理解为对模型信息中的变量或者符号的含义进行解析;语法解析可以理解为对a*x+b这一类型的函数的含义进行解析。
55.在实际应用中,用户通过代数语言的形式将优化模型进行输入,即输入模型文件,再引入数据,即输入数据文件,建立优化模型。
56.例如,初始文件包括优化模型文件和数据文件,优化模型文件中包括优化目标函数y=a*x+b以及约束条件:c≥x≥d,,数据文件中包括a的值和b的值,其中,优化目标函数即描述一个优化问题的目标函数,对优化目标函数y=a*x+b中的“=”、“+”、“y”、“a”、“b”和“x”进行词法解析,并对c≥x≥d中的“≥”、“c”和“d”进行词法解析,以及对“y=a*x+b”、“c≥x≥d”进行语法解析得到模型数据。
57.进一步地,所述对所述初始文件中的模型信息进行词法解析、以及语法解析得到模型数据,包括:
58.对所述模型信息中的符号信息进行词法解析得到中间模型信息;
59.对所述中间模型信息中的语句信息进行语法解析得到模型实例;
60.根据所述模型实例生成模型数据。
61.在实际应用中,利用语义解析的结果来构造优化模型,首先会在内存中生成优化模型的数据结构,然后据此生成具体的lp/mps/nl格式的模型实例,该实例是可以直接被优化求解器进行读取求解的。首先要对模型信息中的符号进行分析,得到这些符号的含义,如,“+”识别为加法运算,进一步地对整个语句进行分析,如a*x+b可以识别为a乘以x,再加上b。
62.举例来说,优化模型文件中包括优化目标函数:y=a*x+b,以及约束条件:c≥x≥d,数据文件中包括a的值和b的值,对y=a*x+b中的“=”、“+”、“y”、“a”、“b”和“x”进行词法解析,其中,“=”可以解析为赋值,将等于号右边的变量或参数的计算结果赋值到左边的变
量,“+”可以解析加法运算,将右边的变量或参数与左边的变量或参数相加,“y”和“x”均可以理解为变量,“a”、“b”可以理解为参数,在两个变量或者参数中间存在“*”的情况下,可以理解为对两个变量或参数做乘法运算。对“y=a*x+b”进行语法解析,可以识别为首先计算“a*x”,即,参数a乘以变量x,接着计算“a*x+b”,即,参数a乘以变量x的值与参数b的值相加,最后,将“a*x+b”的值赋值给变量y。相应地,对约束条件进行词法解析可以得到“c”、“d”可以理解为参数,“≥”可以理解为大于等于,再将参数a的值和参数b的值代入“y=a*x+b”可得到模型的数据结构,进一步地,可以根据该模型的数据结构输出lp/mps/nl等格式的模型文件。
63.需要说明的是,上述举例中的符号仅为部分示例,更多的运算符号可以根据建模语言的标准确定,或者根据自定义的标准确定,本说明实施例不进行限定。
64.在一种可实施的方式中,根据所述模型实例生成模型数据可以理解为根据优化模型的数据结构生成具体的lp/mps/nl格式的文件。具体实施方式如下所述。
65.具体地,所述根据所述模型实例生成模型数据,包括:
66.将所述模型实例根据预设数据类型,生成模型数据。
67.其中,预设数据类型可以理解为要输出的文件类型,例如lp/mps/nl等格式。
68.例如,预设数据类型为lp格式,则将模型的数据结构转换为lp格式的文件。
69.步骤104:根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息。
70.其中,模型特征可以为变量个数、约束个数、是否为线性、是否包含非线性项、稀疏程度等特征;求解器选择模型可以理解为根据要解决的问题的数学模型,进行自动选择解决该数学模型问题的求解器的机器学习模型,例如,求解器选择模型可以为逻辑回归、决策树、深度学习模型等;目标求解器信息可以为优化求解器的信息和/或优化求解器参数的信息。
71.在实际应用中,将建立好的模型数据的模型特征输入预设的求解器选择模型,即可获得关于优化求解器的信息和/或优化求解器参数的信息。
72.需要说明的是,目标求解信息可以是求解器信息,也可以为求解器信息和求解器的参数信息,也就是说,可以仅获得求解器信息以确定使用哪个求解器,并直接使用该求解器的初始参数,也可以获得求解器信息和求解器的参数信息,接着根据获得的求解器的参数信息更新求解器的初始参数,以得到更新参数后的求解器。
73.在一种可能的实现方式中,所述将所述模型特征输入求解器选择模型获得目标求解信息,包括:
74.将所述模型特征输入求解器选择模型获得求解器信息和参数信息。
75.其中,求解器信息可以为求解器的类型信息,例如,mindopt、gurobi、knitro等;参数信息可以为求解器使用的处理器线程,占用的最大内存等参数信息。
76.在实际应用中,通过从内存中的优化模型的数据结构解析出优化模型本身的特征,包括但不限于变量个数、约束个数、是否为线性、是否包含非线性项、稀疏程度等特征。然后将这些特征作为机器学习模型的输入进行推理,产生求解器选择结果和对应的参数选择结果。其中机器学习模型包括但不限于逻辑回归、决策树、深度学习模型等。
77.例如,模型特征为变量个数和约束个数,将变量个数和约束个数输入基于深度学
习的求解器选择模型,得到求解器信息,如,使用mindopt求解器,以及求解器的参数信息:求解器使用两个线程,最大内存占用为4g。
78.在使用求解器选择模型之前还包括对求解器选择模型继续训练的步骤,具体实施方式如下所述。
79.根据预设变量特征、预设约束特征和预设属性特征对初始求解器选择模型进行训练,获得所述求解器选择模型。
80.在实际应用中,机器学习模型在训练的过程中,训练数据的输入为优化模型实例的特征(包括但不限于变量个数、约束个数、是否为线性、是否包含非线性项、稀疏程度等特征),输出为求解器和参数选择。
81.本说明书实施例通过根据模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,以选择合适的求解器对模型进行求解,提高了优化结果的准确性。
82.步骤106:根据所述目标求解信息对所述模型数据进行求解得到优化结果。
83.在实际应用中,根据参数选择的结果,选择指定的求解器和参数,对优化模型实例进行求解计算,并产出结果。
84.具体地,所述根据所述目标求解信息对所述模型数据进行求解得到优化结果,包括:
85.根据所述求解器信息确定初始求解器,并根据所述参数信息确定目标参数;
86.将所述目标参数输入所述初始求解器获得目标求解器;
87.将所述模型数据输入目标求解器获得优化结果。
88.其中,初始求解器可以理解为没有得到确定参数的求解器;目标参数可以为参求解器使用的处理器线程,占用的最大内存,使用的算法等参数。
89.在实际应用中,先确定要使用的求解器,然后再将参数代入求解器,并将建立好的模型数据输入求解器,求解器会产生优化结果。
90.例如,模型特征为变量个数和约束个数,将变量个数和约束个数输入基于深度学习的求解器选择模型,得到求解器信息,如,使用mindopt求解器,以及求解器的参数信息:求解器使用两个线程,最大内存占用为4g。则从数据库中选用mindopt求解器,以及根据参数信息:求解器使用两个线程,最大内存占用为4g设置mindopt求解器的参数,得到目标求解器,接着将lp格式的文件(模型数据)输入该目标求解器,可通过目标求解器得到优化结果,如:y=a*x+b,在约束条件为c≥x≥d的情况下,求使y的值为最小的x的值。
91.另外,还可以选择自己需要的求解器进行求解。具体实施方式如下所述。
92.响应于求解器选择指令,根据所述求解器选择指令确定目标求解器;
93.根据所述目标求解器对所述模型数据进行求解得到优化结果。
94.在实际应用中,对于求解器选择模型产出的求解器不符合现实需求,可以单独设置求解器的类型或者求解器的参数以满足计算需求。
95.例如,模型特征为变量个数和约束个数,将变量个数和约束个数输入基于深度学习的求解器选择模型,得到求解器信息,如,使用mindopt求解器,以及求解器的参数信息:求解器使用两个线程,最大内存占用为4g。可以对使用的线程数量或者最大内存占用进行更改,使求解器使用四个线程,最大内存占用为8g。
96.本说明书实施例提供一种任务优化方法,其中所述任务优化方法包括:对获取到的初始文件进行语义解析得到模型数据,根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,根据所述目标求解信息对所述模型数据进行求解得到优化结果。通过根据模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,以选择合适的求解器对模型进行求解,提高了优化结果的准确性。
97.下述结合附图2,以本说明书提供的任务优化方法在服务器的应用为例,对所述任务优化方法进行进一步说明。其中,图2示出了本说明书一个实施例提供的一种任务优化方法的处理过程流程图,具体包括以下步骤。
98.步骤202:服务器获取用户输入的模型文件和数据文件。
99.在实际应用中,用户通过代数语言的形式将优化模型进行输入,即输入模型文件,再引入数据,即输入数据文件,建立优化模型。
100.例如,初始文件包括优化模型文件和数据文件,优化模型文件中包括优化目标函数y=a*x+b以及约束条件:c≥x≥d,数据文件中包括a的值和b的值。
101.步骤204:服务器对所述模型信息中的符号信息进行词法解析得到中间模型信息。
102.其中,词法解析可以理解为对模型信息中的变量或者符号的含义进行解析;语法解析可以理解为对a*x+b这一类型的函数的含义进行解析。
103.在实际应用中,利用语义解析的结果来构造优化模型,首先会在内存中生成优化模型的数据结构,然后据此生成具体的lp/mps/nl格式的模型实例,该实例是可以直接被优化求解器进行读取求解的。首先要对模型信息中的符号进行分析,得到这些符号的含义,如,“+”识别为加法运算,进一步地对整个语句进行分析,如a*x+b可以识别为a乘以x,再加上b。
104.沿用上例,优化模型文件中包括优化目标函数y=a*x+b和约束条件:c≥x≥d,数据文件中包括a的值和b的值,对y=a*x+b中的“=”、“+”、“y”、“a”、“b”和“x”进行词法解析,其中,“=”可以解析为赋值,将等于号右边的变量或参数的计算结果赋值到左边的变量或参数,“a”、“b”可以理解为参数,“+”可以解析加法运算,将右边的变量或参数与左边的变量或参数相加,“y”和“x”均可以理解为变量,“*”可以理解为相乘,可以理解为对两个变量或参数做乘法运算。
105.步骤206:服务器对所述中间模型信息中的语句信息进行语法解析得到模型实例。并执行步骤208和步骤210。
106.沿用上例,对c≥x≥d进行语法解析可以识别为x的取值范围在c到d之间,对“y=a*x+b”进行语法解析,可以识别为首先计算“a*x”,即,变量a乘以变量x,接着计算“a*x+b”,即,变量a乘以变量x的值与变量b的值相加,最后,将“a*x+b”的值赋值给y。再将a的值和b的值代入“y=a*x+b”可得到模型的数据结构。
107.步骤208:服务器根据所述模型实例生成模型数据。
108.沿用上例,可以根据该模型的数据结构输出lp/mps/nl等格式的模型文件。
109.步骤210:服务器获取所述模型实例中的变量特征、约束特征和属性特征。
110.沿用上例,获取模型特征为变量个数、约束个数、是否为线性、是否包含非线性项、稀疏程度。
111.步骤212:服务器将所述模型特征输入求解器选择模型获得求解器信息和参数信
息。
112.其中,求解器信息可以为求解器的类型信息,例如,mindopt、gurobi、knitro等;参数信息可以为求解器使用的处理器线程,占用的最大内存等参数信息。
113.在实际应用中,通过从内存中的优化模型的数据结构解析出优化模型本身的特征,包括但不限于变量个数、约束个数、是否为线性、是否包含非线性项、稀疏程度等特征。然后将这些特征作为机器学习模型的输入进行推理,产生求解器选择结果和对应的参数选择结果。其中机器学习模型包括但不限于逻辑回归、决策树、深度学习模型等。
114.沿用上例,模型特征为变量个数和约束个数,将变量个数和约束个数输入基于深度学习的求解器选择模型,得到求解器信息,如,使用mindopt、gurobi、knitro等求解器,以及求解器的参数信息:求解器使用两个线程,最大内存占用为4g。
115.步骤214:服务器根据所述求解器信息确定初始求解器,并根据所述参数信息确定目标参数。
116.其中,初始求解器可以理解为没有得到确定参数的求解器;目标参数可以为参求解器使用的处理器线程,占用的最大内存,使用的算法等参数。
117.在实际应用中,先确定要使用的求解器,然后再将参数代入求解器,并将建立好的模型数据输入求解器,求解器会产生优化结果。
118.沿用上例,模型特征为变量个数和约束个数,将变量个数和约束个数输入基于深度学习的求解器选择模型,得到求解器信息,如,使用mindopt求解器,以及求解器的参数信息:求解器使用两个线程,最大内存占用为4g。
119.步骤216:服务器将所述目标参数输入所述初始求解器获得目标求解器。
120.沿用上例,从数据库中选用mindopt求解器,以及根据参数信息:求解器使用两个线程,最大内存占用为4g设置mindopt求解器的参数,得到目标求解器。
121.步骤218:服务器将所述模型数据输入目标求解器获得优化结果。
122.沿用上例,接着将lp格式的文件(模型数据)输入该目标求解器,可通过目标求解器得到优化结果,如:y=a*x+b,且约束条件为:c≥x≥d,求使y的值为最小的x的值。
123.本说明书实施例通过根据模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,以选择合适的求解器对模型进行求解,提高了优化结果的准确性。
124.与上述方法实施例相对应,本说明书还提供了任务优化装置实施例,图3示出了本说明书一个实施例提供的一种任务优化装置的结构示意图。如图3所示,该装置包括:
125.解析模块302,被配置为对获取到的初始文件进行语义解析得到模型数据;
126.选择模块304,被配置为根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息;
127.求解模块306,被配置为根据所述目标求解信息对所述模型数据进行求解得到优化结果。
128.进一步地,所述解析模块302,还被配置为:
129.对所述初始文件中的模型信息进行词法解析、以及语法解析得到模型数据,其中,所述初始文件包括模型文件和数据文件。
130.进一步地,所述解析模块302,还被配置为:
131.对所述模型信息中的符号信息进行词法解析得到中间模型信息;
132.对所述中间模型信息中的语句信息进行语法解析得到模型实例;
133.根据所述模型实例生成模型数据。
134.进一步地,所述解析模块302,还被配置为:
135.将所述模型数据根据预设数据类型,生成模型数据。
136.进一步地,所述选择模块304,还被配置为:
137.获取所述模型实例中的变量特征、约束特征和属性特征。
138.进一步地,所述选择模块304,还被配置为:
139.将所述模型特征输入求解器选择模型获得求解器信息和参数信息。
140.进一步地,所述求解模块306,还被配置为:
141.根据所述求解器信息确定初始求解器,并根据所述参数信息确定目标参数;
142.将所述目标参数输入所述初始求解器获得目标求解器;
143.将所述模型数据输入目标求解器获得优化结果。
144.进一步地,所述求解模块306,还被配置为:
145.响应于求解器选择指令,根据所述求解器选择指令确定目标求解器;
146.根据所述目标求解器对所述模型数据进行求解得到优化结果。
147.所述任务优化装置还包括:
148.根据预设变量特征、预设约束特征和预设属性特征对初始求解器选择模型进行训练,获得所述求解器选择模型。
149.本说明书实施例提供一种任务优化装置,其中所述任务优化装置对获取到的初始文件进行语义解析得到模型数据,根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,根据所述目标求解信息对所述模型数据进行求解得到优化结果。通过根据模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,以选择合适的求解器对模型进行求解,提高了优化结果的准确性。
150.进一步,本说明书实施例还提供了一种任务优化系统,所述任务优化系统包括云解析模块、云选择模块和云求解模块。
151.所述云解析模块,被配置为对获取到的初始文件进行语义解析得到模型数据;
152.所述云选择模块,被配置为根据所述模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息;
153.所述云求解模块,被配置为根据所述目标求解信息对所述模型数据进行求解得到优化结果,并输出所述优化结果。
154.其中,云解析模块、云选择模块和云求解模块可以理解为部署在云端的模块,可以执行本说明书的任务优化方法。
155.进一步地,所述云解析模块,还被配置为:
156.对所述初始文件中的模型信息进行词法解析、以及语法解析得到模型数据,其中,所述初始文件包括模型文件和数据文件。
157.进一步地,所述云解析模块,还被配置为:
158.对所述模型信息中的符号信息进行词法解析得到中间模型信息;
159.对所述中间模型信息中的语句信息进行语法解析得到模型实例;
160.根据所述模型实例生成模型数据。
161.进一步地,所述云解析模块,还被配置为:
162.将所述模型数据根据预设数据类型,生成模型数据。
163.进一步地,所述云选择模块,还被配置为:
164.获取所述模型实例中的变量特征、约束特征和属性特征。
165.进一步地,所述云选择模块,还被配置为:
166.将所述模型特征输入求解器选择模型获得求解器信息和参数信息。
167.进一步地,所述云求解模块,还被配置为:
168.根据所述求解器信息确定初始求解器,并根据所述参数信息确定目标参数;
169.将所述目标参数输入所述初始求解器获得目标求解器;
170.将所述模型数据输入目标求解器获得优化结果。
171.进一步地,所述云求解模块,还被配置为:
172.响应于求解器选择指令,根据所述求解器选择指令确定目标求解器;
173.根据所述目标求解器对所述模型数据进行求解得到优化结果。
174.所述任务优化装置还包括:
175.根据预设变量特征、预设约束特征和预设属性特征对初始求解器选择模型进行训练,获得所述求解器选择模型。
176.通过本说明书实施例的任务优化系统,用户只需要向云端输入构建好的优化模型文件,任务优化系统通过云解析模块根据模型文件建立模型数据;通过云选择模块根据模型数据获取模型特征,并将所述模型特征输入求解器选择模型获得目标求解信息,以选择合适的求解器;和云求解模块对模型进行求解,并将求解结果输出给用户,利用云系统的计算能力提高了计算的效率以及优化结果的准确性,且用户无需在本地部署任务优化应用,即可进行任务优化计算,提高了便捷性。
177.需要说明的是,本说明书上述实施例提供的任务优化方法,还可应用于电力资源优化场景,以适应于对电力场景下的电力资源分配。参见图4,图4示出了本说明书还提供了另一实施例,即一种电力资源优化方法,具体包括如下步骤。
178.步骤402:对获取到的电力资源优化任务的初始文件进行语义解析得到电力资源优化模型数据。
179.其中,电力资源优化任务可以理解为对电力资源分配的优化任务,比如,从a地分配电力资源历史总量为a,从b地分配电力资源历史总量为b,从c地分配电力资源历史总量为c,则在此基础上,对a、b、c三地的电力资源分配量进行优化,可能根据任务需求,确定的目标优化结果为:从a地分配电力资源量为b,从b地分配电力资源量为c,从c地分配电力资源量为a。
180.实际应用中,安全约束经济调度是确保电网稳定运行的同时清理实时能源市场的基本优化模型。云调度组件在接收到针对电力资源优化任务的任务优化请求之后,可根据优化任务请求获取待优化任务对应的初始文件,需要对初始文件中的文本信息进行识别,即,针对代数语言的进行解析,以得到代数语言的含义,并根据所述识别得到的文本含义建立优化模型。
181.步骤404:根据所述电力资源优化模型数据获取电力资源优化模型特征,并将所述
电力资源优化模型特征输入求解器选择模型获得目标求解信息。
182.其中,电力资源优化模型特征可以为变量个数、约束个数、是否为线性、是否包含非线性项、稀疏程度等特征;求解器选择模型可以理解为根据要解决的问题的数学模型,进行自动选择解决该数学模型问题的求解器的机器学习模型,例如,求解器选择模型可以为逻辑回归、决策树、深度学习模型等;目标求解器信息可以为优化求解器的信息和/或优化求解器参数的信息。
183.在实际应用中,电力系统存在安全性约束,并且以系统购电成本最低等为优化目标。将建立好的模型数据的模型特征(如安全性约束的个数,系统购电成本的相关变量的个数)输入预设的求解器选择模型,即可获得关于优化求解器的信息和/或优化求解器参数的信息,其中,求解器信息可以为求解器的类型信息,例如,mindopt、gurobi、knitro等;参数信息可以为求解器使用的处理器线程,占用的最大内存等参数信息。
184.步骤406:根据所述目标求解信息对所述电力资源优化模型数据进行求解得到所述电力资源优化任务的优化结果。
185.在实际应用中,需要解决的问题为:在满足电力系统安全性约束的条件下,以系统购电成本最低等为优化目标,制定多时段的机组发电计划。则根据目标求解信息选择指定的求解器和参数,对电力资源优化模型数据的实例进行求解计算,并产出多时段的机组发电计划。
186.本说明书实施例提供的电力资源优化方法,通过根据电力资源优化模型数据获取电力资源优化模型特征,并将所述电力资源优化模型特征输入求解器选择模型获得目标求解信息,以选择合适的求解器对电力资源优化模型进行求解,提高了优化结果的准确性。
187.上述为本实施例的一种任务优化装置的示意性方案。需要说明的是,该任务优化装置的技术方案与上述的任务优化方法的技术方案属于同一构思,任务优化装置的技术方案未详细描述的细节内容,均可以参见上述任务优化方法的技术方案的描述。
188.图5示出了根据本说明书一个实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
189.计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。
190.在本说明书的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
191.计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移
动设备,或者诸如台式计算机或pc的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
192.其中,处理器520用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述任务优化方法的步骤。
193.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的任务优化方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述任务优化方法的技术方案的描述。
194.本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述任务优化方法的步骤。
195.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的任务优化方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述任务优化方法的技术方案的描述。
196.本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述任务优化方法的步骤。
197.上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的任务优化方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述任务优化方法的技术方案的描述。
198.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
199.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
200.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
201.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
202.以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解
释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1