CN114819442A - 一种运筹优化方法、装置和计算设备 - Google Patents
一种运筹优化方法、装置和计算设备 Download PDFInfo
- Publication number
- CN114819442A CN114819442A CN202110117226.XA CN202110117226A CN114819442A CN 114819442 A CN114819442 A CN 114819442A CN 202110117226 A CN202110117226 A CN 202110117226A CN 114819442 A CN114819442 A CN 114819442A
- Authority
- CN
- China
- Prior art keywords
- hyper
- data
- parameter
- parameters
- optimization algorithm
- 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
- 238000005457 optimization Methods 0.000 title claims abstract description 377
- 238000011160 research Methods 0.000 title claims abstract description 257
- 238000000034 method Methods 0.000 title claims abstract description 88
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 236
- 238000004364 calculation method Methods 0.000 claims abstract description 140
- 238000012549 training Methods 0.000 claims abstract description 113
- 230000002159 abnormal effect Effects 0.000 claims description 31
- 238000003860 storage Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 8
- 238000009826 distribution Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 9
- 230000008859 change Effects 0.000 abstract description 6
- 230000033772 system development Effects 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 15
- 238000011161 development Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000012805 post-processing Methods 0.000 description 6
- 238000010845 search algorithm Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000009194 climbing Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0637—Strategic 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
- G06Q10/06375—Prediction of business process outcome or impact based on a proposed change
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
-
- 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/0475—Generative networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Educational Administration (AREA)
- Marketing (AREA)
- Software Systems (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供了一种运筹优化方法、装置和计算设备,属于人工智能技术领域。该方法应用于运筹优化系统,该方法包括:根据当前应用场景的数据的特征和超参数推理模型,获得运筹优化算法的超参数;然后根据运筹优化算法和获得的运筹优化算法的超参数对当前应用场景的数据进行优化计算,获得计算结果;超参数推理模型由历史应用场景获得的训练数据和/或当前应用场景获得的训练数据动态训练获得。本申请的方案一方面可以适应应用场景的数据的变化,保证运筹优化计算的结果的准确性,提升了运筹优化算法的鲁棒性,另一方面可减小运筹优化系统的开发成本,缩短用户等待时间,提升了用户体验。
Description
技术领域
本申请涉及人工智能(artificial intelligence,AI)技术领域,尤其涉及一种运筹优化方法、装置和计算设备。
背景技术
运筹学是通过运用数学方法研究各种系统的优化途径及方案,为决策者提供科学决策依据的一门学科,是实现有效管理、正确决策和现代化管理的重要方法之一。运筹优化算法在日常生活和生产实践中具有广泛的应用。随着物联网、5G、人工智能、数字孪生等科技的爆发性发展,算力和算法得到了巨大的进步。传统制造业、物流和工业的数字化发展又带来了海量的数据,三者的日益融合逐渐形成了以“数据+算力+算法”为核心的智能制造技术体系。运筹优化算法是作为这个技术体系的核心,数据的价值最终通过运筹优化算法体现(如降本增效)。另外,运筹优化算法在社交、娱乐、教育、交通、安防、工业、物流、电商等众多行业和领域中扮演了不可或缺和无法替代的角色。
实际的生产和决策系统的大部分问题都是多目标的组合优化问题,也称为非确定性多项式难题(nondeterministic polynomially,NP),或非凸优化问题。常用的两个目标是效率和效益,但两者一般不可同时最优,因此常用权重方式转换为单目标。
在一个应用场景中,当场景的问题结构、和/或求解目标的权重发生变化时,容易使得原先基于已知问题、多目标权重和数据特点设计的运筹优化算法(包括算法的超参数和求解策略)与当前的应用场景不适配,无法保持稳定的表现和获得稳定的优化结果。
为了应对动态变化的应用场景,通常需要用户在发现设计的运筹优化算法不适配后,通知开发人员针对新的应用场景进行算法改进和优化,然后重新部署、测试和上线使用。这不仅严重影响了用户体验,如果涉及到核心生产系统,还会影响正常生产运营,而且也显著地提高了算法研发和维护成本,给用户和服务提供方都带来了各方面的问题。
发明内容
本申请实施例提供了一种运筹优化方法、装置和计算设备,运筹优化方法中采用历史应用场景获得的训练数据和/或当前应用场景获得的训练数据动态训练的超参数推理模型,推理出运筹优化算法的超参数,可以适应当前应用场景的数据的变化,保证运筹优化的计算结果的准确性,提升用户体验。
第一方面,本申请提供了一种运筹优化方法,应用于运筹优化系统,该方法包括:获取当前应用场景的数据和数据的特征;然后,根据数据的特征和超参数推理模型,获得运筹优化算法的超参数;最后,利用超参数和运筹优化算法,对当前应用场景的数据进行运筹优化计算,即可获得计算结果;
其中,超参数推理模型由历史应用场景获得的训练数据和/或当前应用场景获得的训练数据动态训练获得。
本申请所示的运筹优化方法,采用动态训练获得的超参数推理模型获得运筹优化算法的超参数,可以主动适应当前应用场景的数据的变化,维持了运筹优化计算结果的准确性,还提升了运筹优化的效率。
在一种可能的实现方式中,根据数据的特征和超参数推理模型,获得运筹优化算法的超参数,包括:
输入数据的特征至超参数推理模型,根据超参数推理模型的推理获得数据的特征对应的运筹优化算法的超参数。
通过超参数推理模型获得运筹优化算法的超参数,减少了算法开发成本的同时,缩短了用户等待时间,提升了用户体验。
在一种可能的实现方式中,方法还包括:分析数据的特征,确定当前应用场景的数据为异常数据,其中,数据的特征包括以下特征中的一种或多种:数据的分布、数据中的用户权重偏好参数、数据的问题结构参数。
在一种可能的实现方式中,方法还包括:分析计算结果;当计算结果的优度不满足预设条件时,确定当前应用场景的数据为异常数据。
通过数据的特征和/或计算结果,确定应用场景的数据为异常数据,可及时发现应用场景的数据的变化,保证了运筹优化计算的准确性。
在一种可能的实现方式中,方法还包括:利用超参数优化算法对运筹优化算法的超参数进行优化,获得优化后的超参数和优化后的计算结果。
通过超参数优化获得优化后的超参数和计算结果,为更新超参数推理模型提供优化的超参数,保证了运筹优化计算的准确性,还为用户提供了准确的运筹优化计算结果。
在一种可能的实现方式中,方法还包括:将异常数据和异常数据对应的优化后的计算结果记录至用于训练超参数推理模型的训练数据集中。
在一种可能的实现方式中,方法还包括:确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
通过超参数优化环节获得新的参数,然后更新超参数推理模型,可以解决由于场景发生变化,导致超参数推理模型推理的超参数不匹配场景的问题,维持优化结果的求解效率和优度不会下降,提高了运筹优化的鲁棒性。
在一种可能的实现方式中,获取当前应用场景的数据和数据的特征包括:获取用户通过用户界面或者应用程序接口上传的当前应用场景的数据;对当前应用场景的数据进行特征提取,获得数据的特征。
通过用户界面或应用程序接口获取用户上传的当前应用场景的数据并提取特征,使得用户可以更方便地使用运筹优化系统。
在一种可能的实现方式中,方法还包括:获取用户配置的运筹优化的任务类型;根据任务类型确定运筹优化算法。
第二方面,本申请还提供了一种运筹优化算法的超参数优化方法,该方法包括:获取当前应用场景的数据的特征,以及根据运筹优化算法和运筹优化算法的超参数对当前应用场景的数据进行运筹优化计算获得的计算结果;根据当前应用场景的数据的特征或计算结果,确定运筹优化算法的超参数待优化;利用超参数优化算法对运筹优化算法的超参数进行优化,获得优化后的超参数。
可以通过数据的特征和计算结果,确定运筹优化算法是否需要优化,当需要优化时,通过超参数优化获得优化后的超参数,获得的运筹优化算法的超参数与当前应用场景的数据更加匹配,保证了运筹优化算法进行优化计算时的准确性。
在一种可能的实现方式中,根据当前应用场景的数据的特征或计算结果,确定运筹优化算法的超参数待优化,包括:若当前应用场景的数据的特征与用于训练超参数推理模型的训练数据集中的数据的特征匹配失败,则确定运筹优化算法的超参数待优化;或者,若计算结果的优度不满足预设条件,则确定运筹优化算法的超参数待优化。
上述方法,可以通过比较数据的特征和历史的数据的特征,或者分析计算结果的优度和预设条件,确定运筹优化算法的超参数需要优化,保证了运筹优化的准确性,提升了用户体验。
在一种可能的实现方式中,运筹优化算法的超参数由超参数推理模型根据当前应用场景的数据的特征进行推理获得。
上述方法通过超参数推理模型获得运筹优化算法的超参数,可减少运筹优化算法的开发成本,同时缩短了用户等待时间,提升了用户体验。
在一种可能的实现方式中,方法还包括:将当前应用场景的数据的特征和优化后的超参数记录至用于训练超参数推理模型的训练数据集中。
在一种可能的实现方式中,方法还包括:确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
本申请所示的超参数优化方法,利用训练数据集中的数据更新超参数推理模型,使得超参数推理模型可以适应应用场景的数据的变化,从而获得更加准确的超参数,保证了运筹优化计算的准确性,提升了用户体验。
第三方面,本申请还提供一种运筹优化系统,该运筹优化系统包括:计算模块,用于获取当前应用场景的数据和数据的特征;超参数配置模块,用于根据数据的特征和超参数推理模型,获得运筹优化算法的超参数;计算模块,还用于利用超参数和运筹优化算法,对当前应用场景的数据进行运筹优化计算,获得计算结果;
其中,超参数推理模型由历史应用场景获得的训练数据和/或当前应用场景获得的训练数据动态训练获得。
在一种可能的实现方式中,超参数配置模块具体用于:输入数据的特征至超参数推理模型,根据超参数推理模型的推理获得数据的特征对应的运筹优化算法的超参数。
在一种可能的实现方式中,超参数配置模块还用于:分析数据的特征,确定当前应用场景的数据为异常数据,其中,数据的特征包括以下特征中的一种或多种:数据的分布、数据中的用户权重偏好参数、数据的问题结构参数。
在一种可能的实现方式中,超参数配置模块还具体用于:分析计算结果;当计算结果的优度不满足预设条件时,确定当前应用场景的数据为异常数据。
在一种可能的实现方式中,超参数配置模块还具体用于:利用超参数优化算法对运筹优化算法的超参数进行优化,获得优化后的超参数和优化后的计算结果。
在一种可能的实现方式中,超参数配置模块还具体用于:将异常数据和异常数据对应的优化后的计算结果记录至用于训练超参数推理模型的训练数据集中。
在一种可能的实现方式中,超参数配置模块还具体用于:确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
在一种可能的实现方式中,计算模块具体用于:获取用户通过用户界面或者应用程序接口上传的当前应用场景的数据;对当前应用场景的数据进行特征提取,获得数据的特征。
在一种可能的实现方式中,计算模块还用于:获取用户配置的运筹优化的任务类型;根据任务类型确定运筹优化算法。
第四方面,本申请还提供一种运筹优化算法的超参数优化装置,该装置包括:获取单元,用于获取当前应用场景的数据的特征,以及根据运筹优化算法和运筹优化算法的超参数对当前应用场景的数据进行运筹优化计算获得的计算结果;识别单元,用于根据当前应用场景的数据的特征或计算结果,确定运筹优化算法的超参数待优化;超参数优化单元,用于利用超参数优化算法对运筹优化算法的超参数进行优化,获得优化后的超参数。
在一种可能的实现方式中,识别单元具体用于:若当前应用场景的数据的特征与用于训练超参数推理模型的训练数据集中的数据的特征匹配失败,则确定运筹优化算法的超参数待优化;或者,若计算结果的优度不满足预设条件,则确定运筹优化算法的超参数待优化。
在一种可能的实现方式中,运筹优化算法的超参数由超参数推理模型根据当前应用场景的数据的特征进行推理获得。
在一种可能的实现方式中,识别单元还用于:将当前应用场景的数据的特征和优化后的超参数记录至用于训练超参数推理模型的训练数据集中。
在一种可能的实现方式中,超参数优化装置还包括:模型更新单元,用于确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
第五方面,本申请还提供一种计算设备,该计算设备包括:存储器和处理器,存储器用于存储计算机指令,处理器执行存储器存储的计算机指令,以实现上述第一方面及其可能的实现方式的方法,或者实现上述第二方面及其可能的实现方式。
第六方面,本申请还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序代码,当计算机程序代码被计算设备执行时,计算设备执行上述第一方面及其可能的实现方式的方法,或者执行上述第二方面及其可能的实现方式的方法,或者使得计算设备实现上述第三方面及其可能的实现方式的装置的功能,或者使得计算设备实现上述第四方面及其可能的实现方式的装置的功能。
第七方面,本申请还提供一种计算机程序产品,当该计算机程序产品运行在计算设备时,计算设备执行上述第一方面及其可能的实现方式的方法,或者执行上述第二方面及其可能的实现方式的方法。
附图说明
图1是本申请实施例提供的一种运筹优化系统的结构示意图;
图2是本申请实施例提供的一种运筹优化系统的应用场景示意图;
图3是本申请实施例提供的另一种运筹优化系统的应用场景示意图;
图4是本申请实施例提供的一种部署有运筹优化系统的计算设备的硬件结构示意图;
图5是本申请实施例提供的一种运筹优化方法流程图;
图6是本申请实施例提供的一种运筹优化算法的结构示意图;
图7是本申请实施例提供的一种训练超参数推理模型的流程图;
图8是本申请提供的一种运筹优化算法的超参数优化方法的流程图;
图9是本申请实施例提供的一种运筹优化算法的超参数优化装置的结构示意图;
图10是本申请实施例提供的一种部署有超参数优化装置的计算设备的硬件结构示意图。
具体实施方式
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本申请实施例中的技术方案进行描述。
在本申请实施例的描述中,“示例性的”、“例如”或者“举例来说”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”、“例如”或者“举例来说”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、“例如”或者“举例来说”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B这三种情况。另外,除非另有说明,术语“多个”的含义是指两个或两个以上。例如,多个系统是指两个或两个以上的系统,多个屏幕终端是指两个或两个以上的屏幕终端。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
为了便于理解本申请提供的技术方案和实施例,下面对运筹优化、运筹优化算法和运筹优化系统的概念进行详细说明。
运筹优化(operation research and optimization)主要研究用户对各种资源的运用及筹划,即在满足一定约束的条件下,以期望发挥有限资源的最大效益、达到总体最优的目标,经常用于解决现实生活领域(例如:仓储、物流、车间调度等领域)的复杂问题。
运筹优化算法是对各领域进行运筹优化、解决其复杂问题的工具。其中,运筹优化算法一般采用的是启发式算法。启发式算法是一种基于直观或经验构造的算法,在可接受的花费(指计算时间、占用空间等)下给出待解决的组合优化问题的每一个实例的一个可行解。启发式算法一般简单划分为:简单启发式算法、元启发式算法和超启发式算法三类。简单启发式算法包括:贪心算法(greedy algorithm,GA)和爬山法(method of climbing,MC)。元启发式算法是简单启发式算法的改进,它是随机算法与局部搜索算法相结合的产物;常用的元启发式算法包括:模拟退火算法(simulated annealing algorithm,SAA)、遗传算法(genetic algorithm,GA)、进化规划(evolution programming,EP)、进化策略(evolution strategies,ES)、蚁群算法(ant colony optimization,ACO)、人工神经网络(artificial neural network,ANN)。超启发式算法是一种高层次的启发式算法,通过管理或操纵一系列低层次启发式算法,以产生新的启发式算法,新启发式算法则被运用于求解各类NP问题。按照高层策略机制的不同,超启发式算法可以大致分为4类:基于随机选择、基于贪心策略、基于元启发式算法和基于学习的超启发式算法。
运筹优化系统是一种运用运筹优化算法为用户解决特定场景的运筹优化问题的平台。运筹优化系统中可以内置各种解决不同问题的运筹优化算法。用户在运筹优化系统中上传应用场景的数据和配置运筹优化任务,运筹优化系统即可运用算法进行优化计算,获得该应用场景的数据的计算结果。
图1为本申请实施例提供的一种运筹优化系统的结构示意图,应理解,图1仅是示例性地示出了运筹优化系统的一种结构化示意图,本申请并不限定运筹优化系统中的结构的划分。如图1所示,运筹优化系统100包括:计算模块101、超参数配置模块102,可选的,还可以包括存储模块103(图1未示出),运筹优化系统100可向用户提供运筹优化服务和运筹优化算法的超参数优化服务。
运筹优化系统可以是ModelArts平台。ModelArts平台是一个一站式AI开发平台,可以提供全流程的AI开发服务,包括:海量数据处理、训练、端-边-云模型部署和运维管理以及帮助用户快速创建、部署模型和管理全周期AI工作数据流,具有平滑、稳定、可靠运行的特点。
下面简要地描述运筹优化系统100中各模块的功能。
计算模块101一方面用于获取用户通过图形用户界面(graphical userinterface,GUI)或应用程序接口(application programming interface,API)配置的运筹优化计算任务和上传的需要进行运筹优化计算的应用场景的数据,另一方面还用于通过用户界面或API向用户反馈该应用场景的计算结果。
可选地,用户通过GUI或API配置的运筹优化计算任务可以包括:运筹优化系统100对当前应用场景进行运筹优化计算时的限定参数,例如:时间优先或性能优先、应用场景的类别及该应用场景中不同问题的偏好权重。
计算模块101在获得用户上传的应用场景的数据后,根据运筹优化算法和运筹优化算法的超参数,按照用户设定的限定参数,对该应用场景的数据进行运筹优化计算,并通过GUI或API向用户反馈运筹优化计算获得的计算结果。其中,运筹优化算法的超参数是指在运筹优化算法执行训练或者推理的过程之前预先设置的参数,超参数不能通过训练运筹优化算法得到。
计算模块101还用于将应用场景的数据,发送给超参数配置模块102,并从超参数配置模块102中获得该应用场景的数据对应的运筹优化算法的超参数,以及将该应用场景对应的计算结果发送给超参数配置模块102,用于超参数配置模块102进行自学习更新。
可选地,计算模块101还用于向用户提供运筹优化算法组构建服务。在运筹优化系统的开发阶段,用户可以通过GUI或API在已有的运筹优化算法模板库中选择运筹优化算法、和/或基于计算模块101提供的算法模板编辑上传自己的运筹优化算法文件、及其对应的超参数类别和取值范围,组建面向特定应用场景的运筹优化算法库。
超参数配置模块102与计算模块101通信。超参数配置模块102基于当前应用场景的数据的特征和预先训练的超参数推理模型进行推理,获得运筹优化算法的超参数,并反馈给计算模块101用于运筹优化计算。超参数配置模块102还根据当前应用场景的数据的特征和计算模块101反馈的计算结果,判断当前应用场景的数据与超参数推理模型是否适配,不适配时,利用超参数优化算法优化推理出的超参数,并基于优化更新后的超参数更新预先训练的超参数推理模型,以使超参数推理模型适应应用场景的数据,提高获取超参数的准确度。其中,超参数优化算法可以是用户通过GUI或API在已有超参数优化算法库中选择的超参数优化算法,还可以是用户通过计算模块101提供的算法模板编辑上传的自己的超参数优化算法。
超参数配置模块102还用于当判断出需要更新预先训练的超参数推理模型时,通过GUI或API向用户发送通知,以及基于用户反馈的更新指令优化超参数和更新参数推理模型,待更新结束后,还通过GUI或API向用户发送更新后的计算结果。其中,更新后的计算结果是由超参数优化算法对应用场景的数据进行优化计算获得的。其中,更新指令包括:用户通过GUI或API配置的超参数优化计算任务。
可选地,用户通过GUI或API配置的超参数优化计算任务可以包括:历史应用场景的对应的运筹优化算法的超参数的范围(以遗传算法为例,超参数可以包括种群的大小、变异率和算法终止代数)和运筹优化系统100进行超参数优化时的限定参数(例如:优化时间和超参数优化算法的迭代次数等)。
可选地,用户还可以设定超参数优化算法输出的除更新后的超参数和计算结果之外的其他结果,例如:超参数优化算法在当前应用场景的数据上的平均运行时间、各次迭代后的计算结果的平均优度和更新后的计算结果的方差等。
可选地,超参数配置模块102还可以单独向用户提供超参数优化服务,即用户可以主动通过GUI或API配置超参数优化计算任务对历史应用场景的对应的运筹优化算法的超参数进行优化。
可选地,超参数配置模块102还可以向用户提供超参数优化算法组构建服务。即在超参数优化计算任务配置完成后,用户还可以通过GUI或API上传自己编辑的超参数优化算法文件,或者在已有的超参数优化算法库中指定一种或多种超参数优化算法对应用场景的数据对应的运筹优化算法超参数进行优化。其中,超参数优化算法可以是如下算法中的一个或多个:网格搜索、贝叶斯优化、随机搜素和基于梯度的优化算法,本申请实施例不对超参数优化算法做具体限定。
存储模块103分别与计算模块101和超参数配置模块102进行通信。存储模块103用于存储历史应用场景的数据、运筹优化算法、超参数优化算法、超参数推理模型、训练超参数推理模型的训练数据集和运筹优化计算的计算结果以及用户设置的限定参数等。
可选地,存储模块103可以是由云服务提供商提供的数据存储服务(objectstorage service,OBS)。
通过上述各模块的功能,本申请实施例提供的运筹优化系统可适应不断变化的应用场景的数据和应用场景,维持运筹优化计算结果的准确性。
图2是本申请实施例提供的一种运筹优化系统100的应用场景示意图。
如图2所示,在一种实施例中,运筹优化系统100可以全部部署在云环境中。云环境是云计算模式下利用基础资源向用户提供云服务的实体。云环境包括云数据中心和云服务平台,云数据中心包括云服务提供商拥有的大量基础资源,包括计算资源、存储资源和通信资源。运筹优化系统100可以独立地部署在云数据中心中的服务器或虚拟机上,也可以分布式地部署在云数据中心中的多台服务器上、或者分布式地部署在云数据中心中的多台虚拟机上、再或者分布式地部署在云数据中心中的服务器和虚拟机上。如图2所示,运筹优化系统100由云服务提供商在云服务平台抽象成一种运筹优化服务提供给用户,用户在云服务购买该云服务后(可预充值再根据最终资源的使用情况进行结算),云环境利用部署在云数据中心的运筹优化系统100向用户提供运筹优化服务。在使用运筹优化服务时,用户可以通过GUI或API上传应用场景的数据到云环境中、以及确定需要运筹优化系统100完成的任务(包括运筹优化计算任务和超参数优化计算任务)。云环境中的运筹优化系统100接收用户的任务信息和场景的数据,经数据预处理后,执行相应的任务。运筹优化系统100通过API或GUI向用户反馈任务结果,即运筹优化计算的计算结果或超参数优化计算的计算结果。以应用场景为车辆路径规划问题(vehicle routing problem,VRP)为例,VRP场景是根据各节点的信息组织满足一定约束条件的行车路线,使得车辆有序地通过各个节点,VRP场景的数据包括:各节点的位置和距离等信息;当运筹优化系统100接收到前述场景的数据时,即进行针对该场景的运筹优化计算,将计算获得的车辆行驶路径通过API或GUI反馈给用户。
本申请提供的运筹优化系统100的部署较为灵活,如图3所示,在另一种实施例中,本申请提供的运筹优化系统100还可以分布式地部署在不同的环境中。本申请提供的运筹优化系统100可以在逻辑上分成多个部分,每个部分执行不同的功能。例如,图1所示的运筹优化系统100的各个模块可以分别部署在终端设备、边缘环境和云环境中的任意两个或三个环境中。终端设备包括:终端服务器、智能手机、笔记本电脑、平板电脑、个人台式电脑、智能摄相机等。边缘环境为包括距离终端设备较近的边缘计算设备集合的环境,边缘计算设备包括:边缘服务器、拥有计算能力的边缘小站等。部署在不同环境或设备的运筹优化系统100的各个模块协同实现为用户提供训练AI模型等功能。在一种实施例中,计算模块101可以进一步地分为获取单元1011和计算单元1012,终端设备中部署运筹优化系统100的计算模块101的获取单元1011,边缘环境中部署计算模块101的计算单元1012和超参数配置模块102,云环境中部署存储模块103。用户将场景的数据和配置的任务发送给终端设备,终端设备将其发送给云环境中的计算单元1012和/或超参数配置模块102,进行运筹优化计算和/或超参数优化计算。应理解,本申请不对运筹优化系统100的哪些部分具体部署在何种环境或设备进行限制性的划分,实际应用时刻根据终端设备的计算能力、边缘环境和云环境的资源占有情况或具体应用需求进行适应性的部署。
运筹优化系统100还可以单独的部署在任意一个环境的一个计算设备上,如单独的部署在一个云环境的服务器上。图4为部署有运筹优化系统100的计算设备200的硬件结构示意图,如图4所示,计算设备200包括第一存储器201、第一处理器202、第一通信接口203以及第一总线204。其中,第一存储器201、第一处理器202、第一通信接口203通过第一总线204实现彼此之间的通信连接。
第一存储器201可以是只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、硬盘和快闪存储器中一个或其任意组合。第一存储器201可以存储程序,当第一存储器201中存储的程序被第一处理器202执行时,第一处理器202和第一通信接口203用于执行运筹优化系统100为用户提供运筹优化服务的方法。第一存储器201还可以存储运筹优化的场景的数据和数据的特征、运筹优化算法、超参数优化算法和优化的计算结果等数据。
第一处理器202可以采用中央处理器(central processing unit,CPU),应用专用集成电路(application specific integrated circuit,ASIC),GPU或其任意组合。第一处理器202可以包括一个或多个芯片。第一处理器202可以包括AI加速器,例如神经网络处理器(neural processing unit,NPU)。
第一通信接口203使用例如收发器一类的收发模块,来实现计算设备200与其他设备或通信网络之间的通信。
第一总线204可包括在计算设备200各个部件(例如,第一存储器201、第一处理器202、第一通信接口203)之间传送信息的通路。
下面结合附图5描述在一种实施例中运筹优化方法的具体流程,以该方法由运筹优化系统执行为例进行说明。
如图5所示,该运筹优化方法包括如下的步骤S1~步骤S5。
在步骤S1中,运筹优化系统100获取用户上传的当前应用场景的数据,并对场景的数据进行特征提取,获得数据的特征。
在本申请的实施例中,用户需要对一个应用场景的数据进行运筹优化计算时,在GUI或API中上传应用场景的数据,并配置运筹优化计算任务。在一种可能的实施方式中,用户还可以使用运筹优化系统100提供的数据生成功能获得应用场景的数据。即用户可以通过GUI或API选择存储的历史应用场景的数据的特征,然后配置数据生成任务。运筹优化系统100基于用户选择的数据的特征和存储的历史应用场景的数据,利用随机生成算法、GAN对抗生成方法或数据采样方法生成当前应用场景的数据。采用GAN对抗生成方法时,需根据历史应用场景的数据训练GAN对抗模型;数据采样方法同样是在历史应用场景的数据进行数据采样。具体地,数据的特征包括以下特征中的一种或多种:数据的分布、数据中的用户权重偏好参数和数据的问题结构参数。以前述的VRP场景为例,VRP场景的数据的分布包括:节点数目、车辆中货物占车辆容量的百分比、节点间距离平均值、节点间距离方差、节点到仓库距离平均值和节点到仓库距离方差;VRP场景的数据中的用户权重偏好参数可以是用户根据各节点的重要程度,预先设定的偏好系数;VRP场景的数据的问题结构参数如表1所示。
表1 VRP场景的数据的问题结构参数
在步骤S2中,运筹优化系统100根据当前应用场景的数据的特征和预先训练好的超参数推理模型,获得当前应用场景的数据的特征对应的运筹优化算法的超参数。
在本申请的实施例中,超参数推理模型用于根据输入模型的数据的特征,推理出当前应用场景的数据的特征对应的运筹优化算法的超参数。超参数推理模型是根据历史应用场景获得的训练数据预先训练获得,训练数据包括于训练数据集中。超参数推理模型可以是已有的经过训练后能实现超参数推理功能的一种机器学习模型,本申请实施例不对机器学习模型的类别做具体的限定。
可选地,在步骤S2之前,该方法还可以包括:根据用户配置的运筹优化的任务类型,确定运筹优化算法。
具体地,任务类型同样可由用户通过图形用户界面GUI上传至运筹优化系统100,也可由用户通过应用程序接口API上传,任务类型包括:采用单个算法进行运筹优化计算和组建算法组进行运筹优化计算。
当用户选择采用单个算法进行优化时,运筹优化系统在多个待选的算法中选择出一个满足预设条件的算法作为当前应用场景的运筹优化算法。
当用户选择组建算法组进行优化时,运筹优化系统根据用户指定的最大并行算法数目,在多个待选的算法中选择出相应个数的满足预设条件的算法作为当前应用场景的运筹优化算法。预设条件包括:运筹优化算法的历史运行时间小于预设时间、历史计算结果的优度大于预设优度或历史计算结果的方差小于预设方差。
在步骤S3中,运筹优化系统利用步骤S2获得的运筹优化算法和超参数,对当前应用场景的数据进行运筹优化计算,即可获得该场景的计算结果。
在本申请的实施例中,运筹优化算法可以采用单一算法的结构。在解决特定的应用场景的优化问题时,也可以采用多种算法组合的结构,图6是本申请实施例提供的一种运筹优化算法的结构。如图6所示,运筹优化算法的结构包括:初始解算法组、迭代搜索算法组、后处理算法组和算法集成单元。与图5所示结构对应的,运筹优化算法的超参数包括:初始解算法组中各初始解算法的类型及其超参数、迭代搜索算法组中各迭代搜索算法的类型及其超参数、后处理算法组中各后处理算法的类型及其超参数、初始解算法组与迭代搜索算法组的连接关系、和迭代算法组与后处理算法组的连接关系、以及循环次数。其中,后处理算法组与算法集成单元可以是全连接关系。
在本申请的实施例中,按照获得的运筹优化算法的超参数和运筹优化算法进行优化计算时,计算过程包括:初始解算法组中各算法根据当前应用场景的数据,分别获得当前应用场景对应的一个子问题的初始计算结果;迭代搜索算法组根据子问题的初始计算结果,获得子问题的计算结果;后处理算法组根据子问题的计算结果,获得当前应用场景的初始计算结果;算法集成单元根据当前应用场景的初始计算结果,获得当前应用场景的计算结果;当未达到设置的循环次数时,更新初始解算法组、迭代搜索算法组、后处理算法组中各算法的超参数,重新计算,当达到预先设定的循环次数时,则输出最后循环次数的计算结果,结束运筹优化。上述当前应用场景的子问题为根据当前应用场景的数据的问题结构参数确定的问题,子问题例如是前述的表1中所示的问题。
在步骤S4中,运筹优化系统确定当前应用场景的数据为异常数据,利用超参数优化算法对当前应用场景对应的运筹优化算法的超参数进行优化,获得优化后的超参数和优化后的计算结果。
在本申请的实施例中,运筹优化系统可对当前应用场景的数据的特征进行分析,判断当前应用场景的数据是否为异常数据。具体地,可将当前应用场景的数据的特征与训练数据集中历史场景的数据的特征进行匹配,当匹配失败时,表示当前应用场景的数据的特征与历史场景的数据的特征之间发生了较大变化,则可确定当前应用场景的数据为异常数据。其中,可采用相关系数法、欧式距离法或其他相关性方法进行匹配计算,当计算的结果不满足预设的条件时,则可认定为匹配失败,本申请实施例不对数据的特征的匹配方法做强限定。
运筹优化系统还可对当前应用场景的计算结果及进行分析,判断当前应用场景的数据是否为异常数据。具体地,当计算结果的优度不满足预设条件时,则可以确定当前应用场景的数据为异常数据。计算结果的优度表示运筹优化算法的计算结果距离最优解的程度。例如,可以利用差值η反映计算结果的优度,η可按下述公式获得。
上述公式中,x表示对当前应用场景的数据进行运筹优化计算获得的计算结果,s表示对当前应用场景的数据进行运筹优化计算获得的松弛解。η越小表示计算结果的优度越大,反之相反。
当确定当前应用场景的数据为异常数据时,可以通知用户运筹优化算法的超参数与当前应用场景的数据的不适配,需要进行超参数优化。当收到用户反馈的更新指令时,进行超参数优化流程。
在本申请的实施例中,运筹优化系统利用超参数优化算法进行超参数优化时,具体是将当前应用场景的数据代入超参数优化算法进行计算,按照预设的优化条件,获得优化结果,优化结果包括:优化后的超参数和优化后计算结果,优化结果还可以包括用户设置的超参数优化计算任务中的限定参数。在超参数优化结束之后,将当前应用场景的数据的特征和优化后的超参数作为训练数据存入训练数据集中,以用于更新超参数推理模型。
在步骤S5中,运筹优化系统确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
在本申请的实施例中,当用户反馈了更新指令或训练数据集中训练数据的变化量大于阈值时,确定超参数推理模型待更新。其中,更新指令可以是用户收到当前应用场景的数据被认定为异常数据的通知时反馈的指令。当确定需要更新超参数推理模型时,在训练数据集中选取一定数量的样本更新超参数推理模型。图7示出了本申请实施例提供的训练超参数推理模型的流程图。如图7所示,训练过程包括:初始化超参数推理模型;在训练数据集中按照预设的样本数选择最近添加的相应个数的训练数据进行模型训练;将模型用于超参数推理;判断是否触发了模型更新,此处模型更新的条件包括:接收到用户的更新指令或者训练数据集中新添加的场景的数据的个数大于预设的阈值。
本申请实施例提供的运筹优化方法中,采用超参数推理模型获得运筹优化算法的超参数,减少了运筹优化算法的开发成本,缩短了用户等待时间,提升了用户体验;根据历史应用场景的训练数据和当前应用场景的训练数据对超参数推理模型进行动态训练,可以使得运筹优化系统能够适应不断变换的场景的数据,提高运筹优化计算的结果的准确性,维持优化结果的求解效率和优度不会下降。
基于上述图5所示的运筹优化方法实施例,本申请还提供一种图1所示结构的运筹优化系统100。如图1所示,该运筹优化系统100包括:计算模块101和超参数配置模块102,其中:
计算模块101,用于获取当前应用场景的数据和数据的特征;
超参数配置模块102,用于根据数据的特征和超参数推理模型,获得运筹优化算法的超参数;
计算模块101,还用于利用超参数和运筹优化算法,对当前应用场景的数据进行运筹优化计算,获得计算结果;
其中,超参数推理模型由历史应用场景获得的训练数据和/或当前应用场景获得的训练数据动态训练获得。
在一种可能的实施方式中,超参数配置模块102具体用于:
输入数据的特征至超参数推理模型,根据超参数推理模型的推理获得数据的特征对应的运筹优化算法的超参数。
在一种可能的实施方式中,超参数配置模块102还具体用于:
分析数据的特征,确定当前应用场景的数据为异常数据,其中,数据的特征包括以下特征中的一种或多种:数据的分布、数据中的用户权重偏好参数、数据的问题结构参数。
在一种可能的实施方式中,超参数配置模块102还具体用于:
分析计算结果;
当计算结果的优度不满足预设条件时,确定当前应用场景的数据为异常数据。
在一种可能的实施方式中,超参数配置模块102还具体用于:
利用超参数优化算法对运筹优化算法的超参数进行优化,获得优化后的超参数和优化后的计算结果。
在一种可能的实施方式中,超参数配置模块102还具体用于:
将异常数据和异常数据对应的优化后的计算结果记录至用于训练超参数推理模型的训练数据集中。
在一种可能的实施方式中,超参数配置模块102还具体用于:
确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
在一种可能的实施方式中,计算模块101具体用于:
获取用户通过用户界面或者应用程序接口上传的当前应用场景的数据;
对当前应用场景的数据进行特征提取,获得所述数据的特征。
在一种可能的实施方式中,计算模块101还具体用于:
获取用户配置的运筹优化的任务类型;
根据所述任务类型确定所述运筹优化算法。
本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时也可以有另外的划分方式,另外,在本申请各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独的物理存在,也可以是两个或两个以上模块集成为一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
基于上述图5所示的运筹优化方法实施例,本申请还提供一种运筹优化算法的超参数优化方法。下面结合附图8,示例性的对超参数优化方法进行介绍。
如图8所示,该方法包括如下的步骤T1~步骤T5。
在步骤T1中,先获取当前应用场景的数据的特征,然后根据运筹优化算法和运筹优化算法的超参数对当前应用场景的数据进行运筹优化计算,获得计算结果;
在本申请的实施例中,上述场景的数据可由用户通过运筹优化客户端的用户界面上传至运筹优化服务器,也可由用户通过应用程序接口API上传;运筹优化算法的超参数由超参数推理模型根据当前应用场景的数据的特征进行推理获得。
在步骤T2中,根据步骤T1获得的当前应用场景的数据的特征或计算结果,确定运筹优化算法的超参数待优化。
在本申请的实施例中,本步骤可以将数据的特征与用于训练超参数推理模型的训练数据集中的数据的特征进行匹配,若匹配失败,则确定当前应用场景的数据为异常数据,同时确定运筹优化算法的超参数待优化;
或者,若数据的计算结果的优度不满足预设条件时,则确定当前应用场景的数据为异常数据,同时确定运筹优化算法的超参数待优化,此处的预设条件包括:计算结果的优度大于预设的优度值。
在步骤T3中,利用超参数优化算法对运筹优化算法的超参数进行优化,获得优化后的超参数。
在步骤T4中,将当前应用场景的数据的特征和优化后的超参数作为训练数据,记录至用于训练超参数推理模型的训练数据集中,用于更新超参数推理模型,以提高其推理的准确度。
在步骤T5中,确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
在本申请的实施例中,当用户反馈了更新指令或训练数据集中训练数据的变化量大于阈值时,确定超参数推理模型待更新。其中,更新指令是用户收到服务器发送的当前应用场景的数据被认定为异常数据的通知时反馈的指令。
本申请实施例提供的运筹优化算法的超参数优化方法,可以解决由于场景的数据发生变化,导致运筹优化系统中的运筹优化算法的超参数不匹配场景的问题,可维持优化结果的求解效率和优度不会下降,提高了运筹优化的准确度。
基于上述图8所示的运筹优化算法的超参数优化方法实施例,本申请还提供一种运筹优化算法的超参数优化装置,应用于图1所示的超参数配置模块中,用于实现上述的运筹优化算法的超参数优化方法。如图9所示,该超参数优化装置包括:获取单元301、识别单元302和超参数优化单元303。
获取单元301,用于获取当前应用场景的数据的特征,以及根据运筹优化算法和运筹优化算法的超参数对当前应用场景的数据进行运筹优化计算获得的计算结果;
识别单元302,用于根据当前应用场景的数据的特征或计算结果,确定运筹优化算法的超参数待优化;
超参数优化单元303,用于利用超参数优化算法对运筹优化算法的超参数进行优化,获得优化后的超参数。
在一种可能的实施方式中,识别单元302,具体用于:
若当前应用场景的数据的特征与用于训练超参数推理模型的训练数据集中的数据的特征匹配失败,则确定运筹优化算法的超参数待优化;
或者,
若计算结果的优度不满足预设条件,则确定运筹优化算法的超参数待优化。
在一种可能的实施方式中,运筹优化算法的超参数由超参数推理模型根据当前应用场景的数据的特征进行推理获得。
在一种可能的实施方式中,识别单元302还用于:
将当前应用场景的数据的特征和优化后的超参数记录至用于训练所述超参数推理模型的训练数据集中。
在一种可能的实施方式中,超参数优化装置还包括:
模型更新单元304,用于确定超参数推理模型待更新,根据训练数据集中的训练数据训练超参数推理模型,获得更新后的超参数推理模型。
在上述的装置实施例中,各装置的功能可以全部或部分地通过软件、硬件或者其组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。提供运筹优化系统的计算机程序产品包括一个或多个计算机指令,在计算机上加载和执行这些计算机程序指令时,全部或部分地产生按照本申请方法实施例图5和/或图8所述的流程或功能。
上述图9所示的超参数优化装置可以单独的部署在任意一个环境的一个或多个计算设备上。图10为部署有超参数优化装置的计算设备300的硬件结构示意图。如图10所示,该计算设备300包括:第二存储器310、第二处理器320、第二通信接口330和第二总线340。其中,第二存储器310、第二处理器320、第二通信接口330通过第二总线340实现彼此之间的通信连接。第二存储器310可以是只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、硬盘和快闪存储器中一个或其任意组合。第二存储器310可以存储程序,包括实现上述获取单元301、识别单元302、超参数优化单元303和模型更新单元304的功能的程序,当第二存储器310中存储的程序被第二处理器320执行时,第二处理器320和第二通信接口330用于为用户提供运筹优化算法的超参数优化服务的方法。第二存储器310还可以存储运筹优化的场景的数据和数据的特征、运筹优化算法、超参数优化算法和优化的计算结果等数据。
第二处理器320可以采用中央处理器(central processing unit,CPU),应用专用集成电路(application specific integrated circuit,ASIC),GPU或其任意组合。第二处理器320可以包括一个或多个芯片。第二处理器320也可以包括AI加速器,例如神经网络处理器(neural processing unit,NPU)。
第二通信接口320使用例如收发器一类的收发模块,来实现计算设备300与其他计算设备或通信网络之间的通信。
第二总线340包括在计算设备300各个部件(例如,第二存储器310、第二处理器320、第二通信接口330)之间传送信息的通路。
本申请的实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器(programmable rom,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。
Claims (30)
1.一种运筹优化方法,其特征在于,包括:
获取当前应用场景的数据和所述数据的特征;
根据所述数据的特征和超参数推理模型,获得运筹优化算法的超参数;
利用所述超参数和所述运筹优化算法,对所述当前应用场景的数据进行运筹优化计算,获得计算结果;
其中,所述超参数推理模型由历史应用场景获得的训练数据和/或当前应用场景获得的训练数据动态训练获得。
2.根据权利要求1所述的方法,其特征在于,所述根据所述数据的特征和超参数推理模型,获得运筹优化算法的超参数,包括:
输入所述数据的特征至所述超参数推理模型,根据所述超参数推理模型的推理获得所述数据的特征对应的所述运筹优化算法的超参数。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
分析所述数据的特征,确定所述当前应用场景的数据为异常数据,其中,所述数据的特征包括以下特征中的一种或多种:所述数据的分布、所述数据中的用户权重偏好参数、所述数据的问题结构参数。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
分析所述计算结果;
当所述计算结果的优度不满足预设条件时,确定所述当前应用场景的数据为异常数据。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
利用超参数优化算法对所述运筹优化算法的超参数进行优化,获得优化后的超参数和优化后的计算结果。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
将所述异常数据和所述异常数据对应的所述优化后的计算结果记录至用于训练所述超参数推理模型的训练数据集中。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
确定所述超参数推理模型待更新,根据所述训练数据集中的训练数据训练所述超参数推理模型,获得更新后的超参数推理模型。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述获取当前应用场景的数据和所述数据的特征,包括:
获取用户通过用户界面或者应用程序接口上传的当前应用场景的数据;
对所述当前应用场景的数据进行特征提取,获得所述数据的特征。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
获取用户配置的运筹优化的任务类型;
根据所述任务类型确定所述运筹优化算法。
10.一种运筹优化算法的超参数优化方法,其特征在于,包括:
获取当前应用场景的数据的特征,以及根据运筹优化算法和所述运筹优化算法的超参数对所述当前应用场景的数据进行运筹优化计算获得的计算结果;
根据所述当前应用场景的数据的特征或所述计算结果,确定所述运筹优化算法的超参数待优化;
利用超参数优化算法对所述运筹优化算法的超参数进行优化,获得优化后的超参数。
11.根据权利要求10所述的方法,其特征在于,所述根据所述当前应用场景的数据的特征或所述计算结果,确定所述运筹优化算法的超参数待优化,包括:
若所述当前应用场景的数据的特征与用于训练超参数推理模型的训练数据集中的数据的特征匹配失败,则确定所述运筹优化算法的超参数待优化;
或者,
若所述计算结果的优度不满足预设条件,则确定所述运筹优化算法的超参数待优化。
12.根据权利要求10或11任一项所述的方法,其特征在于,所述运筹优化算法的超参数由超参数推理模型根据所述当前应用场景的数据的特征进行推理获得。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
将所述当前应用场景的数据的特征和所述优化后的超参数记录至用于训练所述超参数推理模型的训练数据集中。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
确定所述超参数推理模型待更新,根据所述训练数据集中的训练数据训练所述超参数推理模型,获得更新后的超参数推理模型。
15.一种运筹优化系统,其特征在于,包括:
计算模块,用于获取当前应用场景的数据和所述数据的特征;
超参数配置模块,用于根据所述数据的特征和超参数推理模型,获得运筹优化算法的超参数;
所述计算模块,还用于利用所述超参数和所述运筹优化算法,对所述当前应用场景的数据进行运筹优化计算,获得计算结果;
其中,所述超参数推理模型由历史应用场景获得的训练数据和/或当前应用场景获得的训练数据动态训练获得。
16.根据权利要求15所述的系统,其特征在于,所述超参数配置模块具体用于:
输入所述数据的特征至所述超参数推理模型,根据所述超参数推理模型的推理获得所述数据的特征对应的所述运筹优化算法的超参数。
17.根据权利要求15或16所述的系统,其特征在于,所述超参数配置模块还用于:
分析所述数据的特征,确定所述当前应用场景的数据为异常数据,其中,所述数据的特征包括以下特征中的一种或多种:所述数据的分布、所述数据中的用户权重偏好参数、所述数据的问题结构参数。
18.根据权利要求15-17任一项所述的系统,其特征在于,所述超参数配置模块还用于:
分析所述计算结果;
当所述计算结果的优度不满足预设条件时,确定所述当前应用场景的数据为异常数据。
19.根据权利要求17或18所述的系统,其特征在于,所述超参数配置模块还用于:
利用超参数优化算法对所述运筹优化算法的超参数进行优化,获得优化后的超参数和优化后的计算结果。
20.根据权利要求19所述的系统,其特征在于,所述超参数配置模块还用于:
将所述异常数据和所述异常数据对应的所述优化后的计算结果记录至用于训练所述超参数推理模型的训练数据集中。
21.根据权利要求20所述的系统,其特征在于,所述超参数配置模块还用于:
确定所述超参数推理模型待更新,根据所述训练数据集中的训练数据训练所述超参数推理模型,获得更新后的超参数推理模型。
22.根据权利要求15-21任一项所述的系统,其特征在于,所述计算模块具体用于:
获取用户通过用户界面或者应用程序接口上传的当前应用场景的数据;
对所述当前应用场景的数据进行特征提取,获得所述数据的特征。
23.根据权利要求15-22任一项所述的系统,其特征在于,所述计算模块还用于:
获取用户配置的运筹优化的任务类型;
根据所述任务类型确定所述运筹优化算法。
24.一种运筹优化算法的超参数优化装置,其特征在于,包括:
获取单元,用于获取当前应用场景的数据的特征,以及根据运筹优化算法和所述运筹优化算法的超参数对所述当前应用场景的数据进行运筹优化计算获得的计算结果;
识别单元,用于根据所述当前应用场景的数据的特征或所述计算结果,确定所述运筹优化算法的超参数待优化;
超参数优化单元,用于利用超参数优化算法对所述运筹优化算法的超参数进行优化,获得优化后的超参数。
25.根据权利要求24所述的装置,其特征在于,所述识别单元具体用于:
若所述当前应用场景的数据的特征与用于训练超参数推理模型的训练数据集中的数据的特征匹配失败,则确定所述运筹优化算法的超参数待优化;
或者,
若所述计算结果的优度不满足预设条件,则确定所述运筹优化算法的超参数待优化。
26.根据权利要求24或25任一项所述的装置,其特征在于,所述运筹优化算法的超参数由超参数推理模型根据所述当前应用场景的数据的特征进行推理获得。
27.根据权利要求26所述的装置,其特征在于,所述识别单元还用于:
将所述当前应用场景的数据的特征和所述优化后的超参数记录至用于训练所述超参数推理模型的训练数据集中。
28.根据权利要求27所述的装置,其特征在于,所述超参数优化装置还包括:
模型更新单元,用于确定所述超参数推理模型待更新,根据所述训练数据集中的训练数据训练所述超参数推理模型,获得更新后的超参数推理模型。
29.一种计算设备,其特征在于,所述计算设备包括:存储器和处理器,所述存储器用于存储计算机指令,所述处理器执行所述存储器存储的计算机指令,以执行上述权利要求1-9或权利要求10-14中任一项所述的方法。
30.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被计算设备执行时,所述计算设备执行上述权利要求1-9或权利要求10-14中任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110117226.XA CN114819442A (zh) | 2021-01-28 | 2021-01-28 | 一种运筹优化方法、装置和计算设备 |
EP21922344.3A EP4276714A4 (en) | 2021-01-28 | 2021-09-27 | METHOD AND DEVICE FOR OPTIMIZING OPERATIONS RESEARCH AND DATA PROCESSING DEVICE |
PCT/CN2021/121050 WO2022160752A1 (zh) | 2021-01-28 | 2021-09-27 | 一种运筹优化方法、装置和计算设备 |
US18/360,234 US20230368051A1 (en) | 2021-01-28 | 2023-07-27 | Operations research and optimization method, apparatus, and computing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110117226.XA CN114819442A (zh) | 2021-01-28 | 2021-01-28 | 一种运筹优化方法、装置和计算设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114819442A true CN114819442A (zh) | 2022-07-29 |
Family
ID=82526912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110117226.XA Pending CN114819442A (zh) | 2021-01-28 | 2021-01-28 | 一种运筹优化方法、装置和计算设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230368051A1 (zh) |
EP (1) | EP4276714A4 (zh) |
CN (1) | CN114819442A (zh) |
WO (1) | WO2022160752A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115473232A (zh) * | 2022-11-02 | 2022-12-13 | 广东电网有限责任公司中山供电局 | 一种负荷参数调整方法、系统、设备和存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358099A1 (en) * | 2015-06-04 | 2016-12-08 | The Boeing Company | Advanced analytical infrastructure for machine learning |
US10572823B1 (en) * | 2016-12-13 | 2020-02-25 | Ca, Inc. | Optimizing a malware detection model using hyperparameters |
US11544494B2 (en) * | 2017-09-28 | 2023-01-03 | Oracle International Corporation | Algorithm-specific neural network architectures for automatic machine learning model selection |
CN109447277B (zh) * | 2018-10-19 | 2023-11-10 | 厦门渊亭信息科技有限公司 | 一种通用的机器学习超参黑盒优化方法及系统 |
US11620568B2 (en) * | 2019-04-18 | 2023-04-04 | Oracle International Corporation | Using hyperparameter predictors to improve accuracy of automatic machine learning model selection |
CN111178626A (zh) * | 2019-12-30 | 2020-05-19 | 苏州科技大学 | 基于wgan算法的建筑能耗预测方法及监测预测系统 |
CN111612528A (zh) * | 2020-04-30 | 2020-09-01 | 中国移动通信集团江苏有限公司 | 用户分类模型的确定方法、装置、设备及存储介质 |
CN112116162B (zh) * | 2020-09-26 | 2022-11-29 | 国家电网公司华中分部 | 基于ceemdan-qfoa-lstm的输电线覆冰厚度预测方法 |
-
2021
- 2021-01-28 CN CN202110117226.XA patent/CN114819442A/zh active Pending
- 2021-09-27 WO PCT/CN2021/121050 patent/WO2022160752A1/zh unknown
- 2021-09-27 EP EP21922344.3A patent/EP4276714A4/en active Pending
-
2023
- 2023-07-27 US US18/360,234 patent/US20230368051A1/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115473232A (zh) * | 2022-11-02 | 2022-12-13 | 广东电网有限责任公司中山供电局 | 一种负荷参数调整方法、系统、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022160752A1 (zh) | 2022-08-04 |
EP4276714A4 (en) | 2024-06-19 |
EP4276714A1 (en) | 2023-11-15 |
US20230368051A1 (en) | 2023-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11423295B2 (en) | Dynamic, automated fulfillment of computer-based resource request provisioning using deep reinforcement learning | |
JP2021532488A (ja) | データセットのための機械学習モデルの好適性の決定 | |
US8938375B2 (en) | Optimizing business process management models | |
WO2019182590A1 (en) | Automated machine learning systems and methods | |
EP3440554A1 (en) | Selection of machine learning alogorithms | |
KR101732319B1 (ko) | 목표 지향적 빅데이터 비즈니스 분석 프레임워크 | |
CN111612528A (zh) | 用户分类模型的确定方法、装置、设备及存储介质 | |
US11429863B2 (en) | Computer-readable recording medium having stored therein learning program, learning method, and learning apparatus | |
Sreekanth et al. | Evaluation of estimation in software development using deep learning-modified neural network | |
CN112988275B (zh) | 一种基于任务感知的移动边缘计算多用户计算卸载方法 | |
WO2022252694A1 (zh) | 神经网络优化方法及其装置 | |
CN116976640A (zh) | 自动化业务生成方法、装置、计算机设备及存储介质 | |
US20230368051A1 (en) | Operations research and optimization method, apparatus, and computing device | |
Baty et al. | Combinatorial optimization-enriched machine learning to solve the dynamic vehicle routing problem with time windows | |
CN116210010A (zh) | 用于评估工程系统的一致性的方法和系统 | |
KR102152081B1 (ko) | 딥러닝 기반의 가치 평가 방법 및 그 장치 | |
CN113687651B (zh) | 一种按需派送车辆的路径规划方法及装置 | |
Zhang et al. | A Novel Ant Colony Optimization Algorithm for Large Scale QoS‐Based Service Selection Problem | |
US20230267007A1 (en) | System and method to simulate demand and optimize control parameters for a technology platform | |
Soeffker et al. | Adaptive state space partitioning for dynamic decision processes | |
US11656887B2 (en) | System and method to simulate demand and optimize control parameters for a technology platform | |
Li et al. | Type-1 assembly line balancing considering uncertain task time | |
CN111027709B (zh) | 信息推荐方法、装置、服务器及存储介质 | |
JP7464115B2 (ja) | 学習装置、学習方法および学習プログラム | |
CN114757448A (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 |