CN103366021A - 一种云计算平台上的变邻域搜索方法及*** - Google Patents
一种云计算平台上的变邻域搜索方法及*** Download PDFInfo
- Publication number
- CN103366021A CN103366021A CN2013103418927A CN201310341892A CN103366021A CN 103366021 A CN103366021 A CN 103366021A CN 2013103418927 A CN2013103418927 A CN 2013103418927A CN 201310341892 A CN201310341892 A CN 201310341892A CN 103366021 A CN103366021 A CN 103366021A
- Authority
- CN
- China
- Prior art keywords
- solution
- locally optimal
- optimal solution
- search
- data acquisition
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种云计算平台上的变邻域搜索方法及***,克服目前基于单个实例进行的变邻域搜索都是存在收敛过快以及逃离局部极值能力较弱的不足,该方法包括:预设一数据集合及多个初始解,将多个初始解存储到数据集合中;采用多个实例基于多个初始解中至少一个,对求解空间分别进行邻域搜索;对于任一实例,搜索所获得的局部最优解优于数据集合中的最差解时,采用局部最优解更新最差解;其中,最差解为数据集合中的初始解和/或局部最优解中最小值的解。本申请的实施例采用多实例进行并发搜索,并可以在各实例间交互搜索结果,能够有效扩展求解空间,增大逃离局部最优的可能性,进而可以获得更好的全局最优解。
Description
技术领域
本发明涉及一种变邻域搜索技术,尤其涉及一种云计算平台上的变邻域搜索方法及***。
背景技术
变邻域搜索算法(Variable Neighborhood Search,简称VNS),是一种轨迹式元启发式算法,其包含了动态变化的邻域结构,算法较通用,自由度大,可针对特殊问题设计多种变型,主要用于求解组合优化问题和全局优化问题。
组合优化问题的求解方法可以分为两类:一类是精确算法,这类算法对解空间进行完整搜索,可以保证找到小规模问题的最优解;另一类是启发式算法,这类算法放弃了对解空间搜索的完整性,因此不能保证最终解的全局最优性。
由于组合优化问题中大量存在着非确定性多项式困难(NP-Hard)问题,因此精确搜索算法在问题规模较大时往往难以实现。而启发式算法尽管不能证明解的最优性,但在很多情况下却能够以合理的计算代价找出较好的近似最优解。
变邻域搜索算法的基本思想是在搜索过程中,基于已找到的局部最优解,***地改变其邻域结构,以此来拓展搜索范围,进而找到另一个局部最优解。
变邻域搜索算法包括了局部搜索(Local Search)、扰动(Shaking)和邻域变换三个过程,利用局部搜索寻找局部最优解,提高搜索精度,采用扰动过程跳出局部最优解的范围,寻找新的局部最优解,使得局部最优解向全局最优解靠拢,邻域变换提供了一种迭代方式和停止准则。
但是,目前的变邻域搜索都是基于单个实例来进行的,对求解空间的搜索能力有限,存在收敛过快以及逃离局部极值能力较弱等缺点。
发明内容
本发明所要解决的技术问题是克服目前基于单个实例进行的变邻域搜索都是存在收敛过快以及逃离局部极值能力较弱的不足。
为了解决上述技术问题,本发明提供了一种云计算平台上的变邻域搜索方法,应用于多个实例对一求解空间进行搜索,其中,该方法包括:预设一数据集合及多个初始解,将所述多个初始解存储到所述数据集合中;采用所述多个实例基于所述多个初始解中至少一个,对所述求解空间分别进行邻域搜索;对于任一实例,搜索所获得的局部最优解优于所述数据集合中的最差解时,采用所述局部最优解更新所述最差解;其中,所述最差解为所述数据集合中的初始解和/或局部最优解中最小值的解。
优选地,该方法包括:对于所述多个实例中运行全局最优解的实例外的任一实例,若预设次数的迭代搜索并没有更新自己的局部最优解,则从所述数据集合中随机选取一个初始解或局部最优解进行迭代搜索。
优选地,将所述多个初始解存储到所述数据集合中,包括:对所述多个初始解按照大小进行排序。
优选地,该方法包括:采用所述局部最优解更新所述最差解后,对所述数据集合中的初始解和/或局部最优解按照大小进行排序。
本申请的实施例还提供了一种云计算平台上的变邻域搜索***,应用于多个实例对一求解空间进行搜索,其中,该***包括:预设模块,设置为预设一数据集合及多个初始解,将所述多个初始解存储到所述数据集合中;搜索模块,设置为采用所述多个实例基于所述多个初始解中至少一个,对所述求解空间分别进行邻域搜索;更新模块,设置为对于任一实例,搜索所获得的局部最优解优于所述数据集合中的最差解时,采用所述局部最优解更新所述最差解;其中,所述最差解为所述数据集合中的初始解和/或局部最优解中最小值的解。
优选地,该***包括:替换模块,与所述预设模块及搜索模块相连,设置为对于所述多个实例中运行全局最优解的实例外的任一实例,若预设次数的迭代搜索并没有更新自己的局部最优解,则从所述数据集合中随机选取一个初始解或局部最优解进行迭代搜索。
优选地,该***包括:排序模块,与所述预设模块相连,设置为对所述多个初始解按照大小进行排序。
优选地,所述排序模块设置为所述更新模块采用所述局部最优解更新所述最差解后,对所述数据集合中的初始解和/或局部最优解按照大小进行排序。
与现有技术相比,本申请的实施例采用多实例进行并发搜索,并可以在各实例间交互搜索结果,能够有效扩展求解空间,增大逃离局部最优的可能性,进而可以获得更好的全局最优解。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本申请实施例的云计算平台上的变邻域搜索方法的流程示意图。
图2为本申请实施例的云计算平台上的变邻域搜索***的构造示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。本申请实施例以及实施例中的各个特征在不相冲突前提下的相互结合,均在本发明的保护范围之内。
另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例的云计算平台上的变邻域搜索方法,主要应用于多个实例对一求解空间进行邻域搜索。如图1所示,该方法主要包括如下内容。
步骤S110,预设一数据集合。该数据集合主要用来存储多个实例进行邻域搜索所获得的解。
步骤S120,预设多个初始解,每个实例都可以基于其中至少一个初始解对搜索空间分别进行邻域搜索。初始解的数量可以大于等于实例的数量。
步骤S130,将各初始解存储到所预设的数据集合中。本申请的实施例,可以对数据集合中的初始解按照大小进行排序。
步骤S140,采用多个实例基于各自对应的初始解对所述求解空间进行邻域搜索。每一个实例的每一次邻域搜索,都可以基于一个当前解来进行,在该当前解的邻域集合中通过搜索获得局部最优解;其中第一次的邻域搜索,是基于初始解来进行的。
邻域集合中包含有对当前解的一些邻域变换方法,从而改变当前解的结构,进而可以获得不同的适应值(fitness),也即前述的局部最优解。
步骤S150,对于任一实例,邻域搜索所获得的局部最优解优于所述数据集合中的最差解时,采用所述任一实例邻域搜索所获得的局部最优解更新所述最差解,然后对数据集合中的初始解和/或局部最优解按照大小进行排序。
其中的最差解,为数据集合中的初始解和/或局部最优解中最小值的解。
迭代搜索完成后,数据集合中的最优解即为全局最优解。
本申请的实施例中,对于多个实例中运行全局最优解的实例外的任一实例,若预设次数的迭代搜索并没有更新自己的局部最优解,则从数据集合中随机选取一个初始解或局部最优解作为自己的当前解,并利用随机选取的该当前解进行后续的迭代搜索。
本申请的实施例,在应用时,可以按照如下的算法流程来进行。
Step1设定初始参数:M(实例个数),Kmax(邻域结构个数),Tmax(算法总迭代次数)以及邻域结构集合Nk(k=1,…,Kmax);为实例m(m=1,…,M)设定一个初始解并记录其当前最优解:当前解km=1,tm=1,im=1。初始化数据集合D,Iter(算法允许最优解不更新的最大迭代次数)。
Step2对于每个实例m(m=1,…,M),当tm>Tmax时,实例m停止运算;否则,在的km邻域中随机选取解并对解进行局部搜索,得到局部最优解若则 并将集合D中的最差解更新为km=1,im=1;否则,若im>Iter,则从集合D中随机选择一个最优解,赋予km=1,im=1;否则,k=kmod Kmax+1,im=im+1。t=t+1,重复步骤Step2。
本申请实施例的云计算平台上的变邻域搜索***,应用于多个实例对一求解空间进行搜索。如图2所示,该***主要包括预设模块210、搜索模块220以及更新模块230。
预设模块210,设置为预设一数据集合及多个初始解,将多个初始解存储到数据集合中。
搜索模块220,与预设模块210相连,设置为采用多个实例基于多个初始解中至少一个,对求解空间分别进行邻域搜索,各自获得本次搜索对应的局部最优解。
更新模块230,与预设模块210及搜索模块220相连,设置为对于任一实例,搜索所获得的局部最优解优于数据集合中的最差解时,采用该任一实例搜索获得的局部最优解更新最差解。其中,最差解为数据集合中的初始解和/或局部最优解中最小值的解。
如图2所示,本申请实施例的云计算平台上的变邻域搜索***,还可以包括一替换模块240,其与预设模块210及搜索模块220相连,设置为对于多个实例中运行全局最优解的实例外的任一实例,若预设次数的迭代搜索并没有更新自己的局部最优解,则从数据集合中随机选取一个初始解或局部最优解作为自己的当前解,并利用当前解进行后续的迭代搜索。
如图2所示,本申请实施例的云计算平台上的变邻域搜索***,还可以包括一排序模块250,其与预设模块210相连,设置为对多个初始解按照大小进行排序。
本申请的实施例中,排序模块250设置为更新模块230采用局部最优解更新最差解后,对数据集合中的初始解和/或局部最优解按照大小进行排序。
本申请的实施例应用在在云计算平台上时,可以将多台计算节点构建成一个集群,并在共享存储设备上创建集群文件***。在各计算节点挂载集群文件***,对共享资源进行并发访问。在集群文件***中创建多个虚拟机镜像,并通过底层的虚拟化处理将虚拟机运行在不同的计算节点上。在每个虚拟机中创建一个应用,用于实例对求解空间进行邻域搜索。在集群文件***中创建一个共享文件,该共享文件用于记录所有实例找到的全局最优解,同时每个虚拟机中的应用均能访问该共享文件,以进行实例间的信息交互。
本申请的实施例中,多个实例会同时对求解空间进行邻域搜索,有效扩大了求解空间,并能高效地使用有限的计算资源,提高处理能力和效率。本申请的实施例可以根据需要,在各实例之间进行信息交互,共享各自的历史最优解,能够有效避免迭代搜索的过早收敛,提高了搜索逃离局部极值的可能性,进而可以获得更好的全局最优解。
本领域的技术人员应该明白,上述的本申请实施例所提供的***的各组成部分,以及方法中的各步骤,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上。可选地,它们可以用计算装置可执行的程序代码来实现。从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (8)
1.一种云计算平台上的变邻域搜索方法,应用于多个实例对一求解空间进行搜索,其中,该方法包括:
预设一数据集合及多个初始解,将所述多个初始解存储到所述数据集合中;
采用所述多个实例基于所述多个初始解中至少一个,对所述求解空间分别进行邻域搜索;
对于任一实例,搜索所获得的局部最优解优于所述数据集合中的最差解时,采用所述局部最优解更新所述最差解;
其中,所述最差解为所述数据集合中的初始解和/或局部最优解中最小值的解。
2.根据权利要求1所述的方法,其中,该方法包括:
对于所述多个实例中运行全局最优解的实例外的任一实例,若预设次数的迭代搜索并没有更新自己的局部最优解,则从所述数据集合中随机选取一个初始解或局部最优解进行迭代搜索。
3.根据权利要求1所述的方法,其中,将所述多个初始解存储到所述数据集合中,包括:
对所述多个初始解按照大小进行排序。
4.根据权利要求3所述的方法,其中,该方法包括:
采用所述局部最优解更新所述最差解后,对所述数据集合中的初始解和/或局部最优解按照大小进行排序。
5.一种云计算平台上的变邻域搜索***,应用于多个实例对一求解空间进行搜索,其中,该***包括:
预设模块,设置为预设一数据集合及多个初始解,将所述多个初始解存储到所述数据集合中;
搜索模块,设置为采用所述多个实例基于所述多个初始解中至少一个,对所述求解空间分别进行邻域搜索;
更新模块,设置为对于任一实例,搜索所获得的局部最优解优于所述数据集合中的最差解时,采用所述局部最优解更新所述最差解;
其中,所述最差解为所述数据集合中的初始解和/或局部最优解中最小值的解。
6.根据权利要求5所述的***,其中,该***包括:
替换模块,与所述预设模块及搜索模块相连,设置为对于所述多个实例中运行全局最优解的实例外的任一实例,若预设次数的迭代搜索并没有更新自己的局部最优解,则从所述数据集合中随机选取一个初始解或局部最优解进行迭代搜索。
7.根据权利要求5所述的***,其中,该***包括:
排序模块,与所述预设模块相连,设置为对所述多个初始解按照大小进行排序。
8.根据权利要求7所述的***,其中:
所述排序模块设置为所述更新模块采用所述局部最优解更新所述最差解后,对所述数据集合中的初始解和/或局部最优解按照大小进行排序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103418927A CN103366021A (zh) | 2013-08-07 | 2013-08-07 | 一种云计算平台上的变邻域搜索方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103418927A CN103366021A (zh) | 2013-08-07 | 2013-08-07 | 一种云计算平台上的变邻域搜索方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103366021A true CN103366021A (zh) | 2013-10-23 |
Family
ID=49367362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103418927A Pending CN103366021A (zh) | 2013-08-07 | 2013-08-07 | 一种云计算平台上的变邻域搜索方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103366021A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107578178A (zh) * | 2017-09-11 | 2018-01-12 | 合肥工业大学 | 基于变邻域搜索和引力搜索混合算法的调度方法及*** |
CN108009013A (zh) * | 2017-12-25 | 2018-05-08 | 湖南大学 | 针对分离约束背包问题的一种协同的并行邻域搜索方法 |
CN108663933A (zh) * | 2017-03-28 | 2018-10-16 | 中移(杭州)信息技术有限公司 | 一种制造装备组合的获取方法及云平台 |
CN109543202A (zh) * | 2017-09-22 | 2019-03-29 | 中国科学院微电子研究所 | 一种电子设计自动优化的方法及*** |
CN110601978A (zh) * | 2019-09-16 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 流量分发控制方法和装置 |
CN111950761A (zh) * | 2020-07-01 | 2020-11-17 | 合肥工业大学 | 面向高端装备复杂分层任务网络的研制资源集成调度方法 |
CN113642763A (zh) * | 2021-06-30 | 2021-11-12 | 合肥工业大学 | 基于预算约束的高端装备研制资源配置与优化调度方法 |
CN114091717A (zh) * | 2021-01-11 | 2022-02-25 | 北京京东振世信息技术有限公司 | 一种选址方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030088320A1 (en) * | 2000-06-10 | 2003-05-08 | Sale Mark Edward | Unsupervised machine learning-based mathematical model selection |
CN102855328A (zh) * | 2012-09-18 | 2013-01-02 | 浪潮(北京)电子信息产业有限公司 | 一种并行变邻域搜索方法 |
CN102880798A (zh) * | 2012-09-20 | 2013-01-16 | 浪潮电子信息产业股份有限公司 | 一种求解多车场带时间窗车辆路径问题的变邻域搜索算法 |
-
2013
- 2013-08-07 CN CN2013103418927A patent/CN103366021A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030088320A1 (en) * | 2000-06-10 | 2003-05-08 | Sale Mark Edward | Unsupervised machine learning-based mathematical model selection |
CN102855328A (zh) * | 2012-09-18 | 2013-01-02 | 浪潮(北京)电子信息产业有限公司 | 一种并行变邻域搜索方法 |
CN102880798A (zh) * | 2012-09-20 | 2013-01-16 | 浪潮电子信息产业股份有限公司 | 一种求解多车场带时间窗车辆路径问题的变邻域搜索算法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108663933A (zh) * | 2017-03-28 | 2018-10-16 | 中移(杭州)信息技术有限公司 | 一种制造装备组合的获取方法及云平台 |
CN108663933B (zh) * | 2017-03-28 | 2021-07-09 | 中移(杭州)信息技术有限公司 | 一种制造装备组合的获取方法及云平台 |
CN107578178A (zh) * | 2017-09-11 | 2018-01-12 | 合肥工业大学 | 基于变邻域搜索和引力搜索混合算法的调度方法及*** |
US10402404B2 (en) | 2017-09-11 | 2019-09-03 | Hefei University Of Technology | Scheduling method and system based on hybrid variable neighborhood search and gravitational search algorithm |
CN109543202A (zh) * | 2017-09-22 | 2019-03-29 | 中国科学院微电子研究所 | 一种电子设计自动优化的方法及*** |
CN108009013A (zh) * | 2017-12-25 | 2018-05-08 | 湖南大学 | 针对分离约束背包问题的一种协同的并行邻域搜索方法 |
CN110601978A (zh) * | 2019-09-16 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 流量分发控制方法和装置 |
CN111950761A (zh) * | 2020-07-01 | 2020-11-17 | 合肥工业大学 | 面向高端装备复杂分层任务网络的研制资源集成调度方法 |
CN111950761B (zh) * | 2020-07-01 | 2022-11-15 | 合肥工业大学 | 面向高端装备复杂分层任务网络的研制资源集成调度方法 |
CN114091717A (zh) * | 2021-01-11 | 2022-02-25 | 北京京东振世信息技术有限公司 | 一种选址方法和装置 |
CN113642763A (zh) * | 2021-06-30 | 2021-11-12 | 合肥工业大学 | 基于预算约束的高端装备研制资源配置与优化调度方法 |
CN113642763B (zh) * | 2021-06-30 | 2023-06-09 | 合肥工业大学 | 基于预算约束的高端装备研制资源配置与优化调度方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103366021A (zh) | 一种云计算平台上的变邻域搜索方法及*** | |
CN107710193B (zh) | 分布式计算环境的数据放置控制 | |
Meyerhenke et al. | Partitioning complex networks via size-constrained clustering | |
ES2720482T3 (es) | Equilibrio de carga en sistemas de almacenamiento en grupos | |
Moon et al. | Parallel community detection on large graphs with MapReduce and GraphChi | |
JP7469026B2 (ja) | ストレージでの最適な動的シャードを生成する装置及びシステム | |
US9400767B2 (en) | Subgraph-based distributed graph processing | |
CN102609446B (zh) | 一种分布式Bloom过滤***及其使用方法 | |
Xie et al. | Elite: an elastic infrastructure for big spatiotemporal trajectories | |
US9733835B2 (en) | Data storage method and storage server | |
CN105989015B (zh) | 一种数据库扩容方法和装置以及访问数据库的方法和装置 | |
CN102662855B (zh) | 一种二叉树的存储方法、*** | |
KR20190079354A (ko) | 분할 공간 기반의 공간 데이터 객체 질의처리장치 및 방법, 이를 기록한 기록매체 | |
CN102855328A (zh) | 一种并行变邻域搜索方法 | |
EP3646186B1 (en) | Global occupancy aggregator for global garbage collection scheduling | |
CN105589908A (zh) | 用于事务集合的关联规则计算方法 | |
Iyer et al. | A scalable distributed spatial index for the internet-of-things | |
CN104932986A (zh) | 一种数据重分布方法及装置 | |
CN103064991A (zh) | 一种海量数据聚类方法 | |
CN103699653A (zh) | 数据聚类方法和装置 | |
Dereniowski et al. | Fast collaborative graph exploration | |
KR20180077830A (ko) | 비공유 아키텍처 기반의 분산 스트림 처리 엔진에서 관계형 질의를 처리하는 방법, 이를 수행하기 위한 기록 매체 및 장치 | |
CN104932982B (zh) | 一种消息访存的编译方法及相关装置 | |
CN108121807B (zh) | Hadoop环境下多维索引结构OBF-Index的实现方法 | |
CN113641872B (zh) | 一种散列方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131023 |
|
RJ01 | Rejection of invention patent application after publication |