• No results found

Research on MOEA/D based on Spark Framework

N/A
N/A
Protected

Academic year: 2021

Share "Research on MOEA/D based on Spark Framework"

Copied!
17
0
0

Loading.... (view fulltext now)

Full text

(1)

学校编码:10384 分类号 密级 学 号:23020131153154 UDC

硕士学位论文

基于 Spark 计算框架的 MOEA/D 算法研究

Research on MOEA/D based on Spark Framework

指导教师姓名:张 德 富 教授

专 业 名 称:计算机科学与技术

论文提交日期:2016 年 月

论文答辩时间:2016 年 月

学位授予日期:2016 年 月

答辩委员会主席:

评阅人:

2016

厦门大学博硕士论文摘要库

(2)
(3)

厦门大学学位论文原创性声明

本人呈交的学位论文是本人在导师指导下,独立完成的研究成果。

本人在论文写作中参考其他个人或集体已经发表的研究成果,均在文

中以适当方式明确标明,并符合法律规范和《厦门大学研究生学术活

动规范(试行)》

另外,该学位论文为( )课题

(组)的研究成果,获得( )课题(组)经费或实

验室的资助,在( )实验室完成。(请在以上括号

内填写课题或课题组负责人或实验室名称,未有此项声明内容的,可

以不作特别声明。)

声明人(签名):

年 月 日

厦门大学博硕士论文摘要库

(4)
(5)

厦门大学学位论文著作权使用声明

本人同意厦门大学根据《中华人民共和国学位条例暂行实施办法》

等规定保留和使用此学位论文,并向主管部门或其指定机构送交学位

论文(包括纸质版和电子版),允许学位论文进入厦门大学图书馆及

其数据库被查阅、借阅。本人同意厦门大学将学位论文加入全国博士、

硕士学位论文共建单位数据库进行检索,将学位论文的标题和摘要汇

编出版,采用影印、缩印或者其它方式合理复制学位论文。

本学位论文属于:

( )1.经厦门大学保密委员会审查核定的保密学位论文,

于 年 月 日解密,解密后适用上述授权。

( √ )2.不保密,适用上述授权。

(请在以上相应括号内打“√”或填上相应内容。保密学位论文

应是已经厦门大学保密委员会审定过的学位论文,未经厦门大学保密

委员会审定的学位论文均为公开学位论文。此声明栏不填写的,默认

为公开学位论文,均适用上述授权。)

声明人(签名):

年 月 日

厦门大学博硕士论文摘要库

(6)
(7)

摘 要

实践证明,元启发式已经成为解决多目标问题(Multiobjective Optimization

Problems, MOPs)的有效手段。特别是进化算法的广泛使用,使得大量的优秀算

法被设计出来,如NSGA-II,SPEA2,PAES等等。多数多目标进化算法是基于帕累 托占优的概念。然而在MOP领域,另一行之有效的策略是基于分解的方法。基 于分解的多目标进化算法(Multi-Objective Evolutionary Algorithm based on

Decom-position, MOEA/D)就是典型之一。通过分解,MOEA/D可以利用现有的单目标优

化算法,使得单目标优化的优秀算法也能被充分利用。经过改进,MOEA/D获得 了CEC2009多目标进化算法竞赛冠军,展示了它的优越性。 大数据时代的来临,对计算机的处理速度又提出了新的要求。为了针对海量 数据提出的挑战,多核芯片、多CPU、分布式系统已经是当下的研究热点。其中 Spark在新一代大数据处理平台中,得到最广泛的认可和支持。 Spark平台现在已经集成了机器学习领域的众多算法,但是在优化算法领域, 特别是多目标进化算法还未集成。本文着重对 MOEA/D 进行研究,并提出其在 Spark 计算框架下的实现方案,通过对比实验,验证各种实现方案的优劣。在 MOEA/D中,权向量是定义子问题的必要部件。本文针对权向量的设置,提供权 向量分区的方案,并以此定义算法的分布式模式。对于分区方法,本文提出两种 方法,一种是以相近的权向量作为一个分区,该方案能充分利用分区内的邻居信 息,但是由于多样性不足,各个分区容易提前进入收敛;另一种方案是将相近的 权向量分配到不同的分区,与前一方案相比,它能够提供更好的多样性,但是, 邻居的信息质量不如方案一中的高。在分布式框架中的实验表明,在大多数测试 函数中,方案二能得到较好的结果。在扩展性方面,本文将权向量划分为多个分 区作为算法的扩展方式。实验表明,单纯依靠权向量的划分,算法的扩展性受到 了限制,因为越多分区,每个分区得到的权向量以及邻居的质量越少,不能完全 利用MOEA/D的优点。 关键词:多目标优化;分解;分布式计算;进化算法

厦门大学博硕士论文摘要库

(8)
(9)

Abstract

Abstract

Metaheuristics has been proven to be an effective tool for solving Multiobjective Optimization Problems(MOPs). Especially based on the research on the Evolutionary Algorithms(EAs), numerous excellent algorithms have been proposed, such as NSGA-II, SPEA2, PAES etc. A majority of algorithms of MOPs are based on Pareto dominance. While, Multi-Objective Evolutionary Algorithm based on Decomposition(MOEA/D) is also an alternative effective approach for MOPs. Different from algorithms based on Pareto dominance, MOEA/D is based on decomposition. By means of decomposition, a series of sub-problems can be optimized simultaneously, and excellent algorithms for single objective optimization can be readily integrated in to MOEA/D. MOEA/D excels other algorithms under several measure indices. An improved version of MOEA/D won the CEC 2009 competition, which fully illustrates the superiority of MOEA/D.

The era of big data is coming, which brings up a new challenge for the process ability of computer systems. To take up the challenge of the mass data, the research of multi-core, multi-CPU and distributed system has been a hot topic recently. Among all the big data process frameworks, Spark is the most popular and well-grounded one.

At present, the Spark platform has integrated plenty of algorithms in the field of machine learning(ML). However, Optimization algorithms, especially MOEAs, are still virgin territory in Spark. We carry out a careful study of the MOEA/D and propose some implementation schemas in the Spark Framework. Experiment results show the advantages and disadvantages of the different schemas. In MOEA/D, the weight is ap-plied to define sub-problems. Focusing on the setting of weights, we propose two weights partitioning schemas, which define the distribution mode for the algorithm. The first partitioning schema is to define a partition by a group of weights that are close to each other. In this schema, the neighborhood information is taken full advantages. How-ever, due to the lack of diversity in each partition, they will be premature convergence. The other schema is to distribute close weights to different partitions. Compared to the

(10)

基于Spark计算框架的MOEA/D算法研究

previous schema, this one can provide better diversity, but the neighborhood infor-mation is low-quality. Experiments in distributed framework indicates that, under the benchmarks, the second schema can obtain better results. As for scalability, experi-ments show that the more partitions cannot simply improve results. Because, more par-titions will result in fewer weights in each parpar-titions and less neighbors for each sub-problem.

Key words:Multi-objective Optimization; Decomposition; Distributed Computation;

Evolutionary Algorithm

(11)

目 录

第一章 绪 论

... 1 1.1 课题背景 ... 1 1.2 国内外研究现状和研究意义 ... 2 1.2.1 多目标优化算法的并行化研究... 2 1.2.2 Spark 计算框架的优点... 3 1.3 本论文研究工作 ... 7 1.4 本论文章节安排 ... 7

第二章 基本理论

... 9

2.1 多目标优化问题 ... 9 2.2 基于分解的多目标进化算法(MOEA/D) ... 10 2.3 多目标优化的分解 ... 12 2.4 MOEA/D 算法流程 ... 13 2.5 MOEA/D 算法发展 ... 17 2.6 多目标进化算法的评价指标 ... 18 2.7 本章小结 ... 19

第三章 基于 Spark 的 MOEA/D 算法

... 21

3.1 基本模型 ... 21 3.2 分区方案一:连续选择 ... 22 3.2.1 分区方案一流程... 22 3.2.2 性能测试... 25 3.3 分区方案二:间隔选择 ... 30 3.3.1 分区方案二流程... 30 3.3.2 性能测试... 33 3.4 分区方案二扩展:间隔选择,沟通参考点 ... 36

厦门大学博硕士论文摘要库

(12)

基于Spark计算框架的MOEA/D算法研究 3.3.1 分区方案二流程... 36 3.3.2 性能测试... 39 3.5 扩展性研究 ... 41 3.6 加速比研究 ... 44 3.7 与其他并行算法的比较 ... 46 3.8 本章小结 ... 49

第四章 结论和进一步工作

... 51

4.1 论文的创新点 ... 52 4.2 存在的问题和进一步工作 ... 53

参 考 文 献

... 55

攻读硕士学位期间发表的论文

... 59

致 谢

... 61

厦门大学博硕士论文摘要库

(13)

Contents

Contents

Chapter 1 Introduction

... 1

1.1 Backgroud of this Subject ... 1

1.2 Related Work ... 2

1.2.1 Parallelization Research of MOEA... 2

1.2.2 Advantages of Spark Computation Framework... 3

1.3 Main Work and Contributions ... 7

1.4 Arrangement of Chapters and Sections ... 7

Chapter 2 Preliminary Theory

... 9

2.1 MOP ... 9

2.2 MOEA/D ... 10

2.3 Decompostion of MOP ... 12

2.4 Details of MOEA/D ... 13

2.5 Development of MOEA/D ... 17

2.6 Performance Metrics of MOEA ... 18

2.7 Summary ... 19

Chapter 3 MOEA/D based on Spark

... 21

3.1 Basic Model ... 21

3.2 Partition Scheme I: Sequential Selection ... 22

3.2.1 Details of Partition Scheme I... 22

3.2.2 Performance Testing... 25

3.3 Partition Scheme II: Alternate Selection ... 30

3.3.1 Details of Partition Scheme II... 30

3.3.2 Performance Testing... 33

3.4 Partition Scheme II extended: Alternate Selection, Communicate

(14)

基于Spark计算框架的MOEA/D算法研究

Reference Point ... 36

3.4.1 Details of Partition Scheme II extended... 36

3.3.2 Performance Testing... 39

3.5 Scalability Experiment ... 41

3.6 Speed-up Experiment ... 44

3.7 Comparision with Parallel Algorithm ... 46

3.8 Summary ... 49

Chapter 4 Conclusions and Future Works

... 51

4.1 Conclusions and Innovations ... 52

4.2 Future Works ... 53

Reference

... 55

Publications during Pursuing Master

Degree

... 59

Acknowledgement

... 61

(15)

第一章 绪 论

1

第一章 绪 论

1.1 课题背景

现实生活中的优化问题,可以分为两类:单目标优化问题(Single-objective Optimization Problem,SOP)和多目标优化问题(Multi-objective Optimization Prob-lem,MOP)。单目标优化问题,即在优化时,只考虑一个目标。否则,则称为多 目标优化问题。多目标优化问题是现实中经常遇到的问题,如工业设计中,成本 与质量就是一对相互冲突的目标。通常人们希望能在同一成本水平下,得到质量 最优的产品。然而,不同成本水平下,能得到不同的最优质量的产品。这是一个 典型的二目标优化问题。一般而言,为了有利于决策者做决策,需要计算出在不 同成本下最优质量的组合。这些组合可以由多目标优化算法非常快速而准确地提 供。 随着对多目标优化问题研究的深入,元启发式算法,特别是进化算法成为了 解决多目标优化问题的有效手段。进化算法代表着一大类模拟自然进化的优化算 法。进化算法从生物进化得到灵感,引入了优胜劣汰的竞争机制,并加入随机因 素用于模拟生物变异。利用平衡多样性与收敛性,进化算法能够比精确算法更加 快速地求解。进化算法的优势在于,它们可以同时对一个候选解的集合进行操作, 该集合被称作世代。多目标进化算法(Multiobjective evolutionary algorithm,MOEA) 搜索帕累托最优解的主要手段是通过选择和变异过程,该过程在每个世代都被应 用。进化算法用随机选择过程模拟自然选择,每个解都通过“适应度”被赋予一个 繁殖的机会。变异过程则是模拟自然界产生新世代的能力,遗传算法通过杂交和 突变来完成变异过程。这里,杂交表示对染色体应用交换过程,而突变则是将染 色体的一个随机选择的基因变异。

多目标进化算法领域已经涌现了大量的优秀算法,如NSGA-II,SPEA2,PAES 等。多数这类算法都是基于帕累托占优的概念,并使用某种类型的密度估计算子。

(16)

基于Spark计算框架的MOEA/D算法研究 2 以该领域表现突出的两个算法NSGA-II和SPEA2为例,前者使用解排位和一个基 于拥挤距离的估计算子;后者则应用了势和一个基于 k 个最近邻的密度估计算 子。不同于基于帕累托占优的算法,MOEA/D[3]建立在分解的基础上。通过分解, 可以同时优化一系列单目标子问题。每个子问题都是一个MOP各个目标的聚合。 为了提升算法的多样性,MOEA/A 在子问题之间建立邻居关系。MOEA/A的各个 子问题的最优解都是原 MOP 的一个非被占优解。历史研究表明,MOEA/D 在各 种评价指标下,都表现优异[3][4]。 为了解决连续的多目标问题,MOEA/D被改造成三个不同的版本,分别是带 有SBX算子的MOEA/D(MOEA/D-SBX)[3],带有DE算子的MOEA/D( MOEA/D-DE)[5]和动态资源分配(Dynamic Resource Allocation)的MOEA/D-DRA。在 MOEA/D-SBX 中,利用 SBX(Simulated Binary Crossover)和多项式变异操作来产生新的解, 一个解只允许和它的邻居杂交,如果生成的解比它的某个邻居好的话,则替换该 邻居。MOEA/D-DE 引入了差分进化来产生新的解。为了提升种群的多样性, MOEA/D-DE额外加入了两种措施:一是,新解只允许替换少数的旧解;二是,一 个解可以以一个相当小的概率和种群中的任一解杂交。为了提高 MOEA/D 的计 算效率,MOEA/D-DRA根据不同子问题的效用(Utility)为它们分配计算资源,其 中,效用的计算是在搜索过程中动态进行的。

1.2 国内外研究现状和研究意义

1.2.1 多目标优化算法的并行化研究 大量的研究表明,为了快速而准确地解决现实世界中的多目标问题,多目标 进化算法已经成为一个普遍的工具[6][7]。现实世界中的问题,大多数是多约束 的,并且计算复杂度高。例如,利用MOEA/D解决多目标车辆路由问题[8],得到 大量优质的解,并且更新了迄今没有发现的解。多目标进化算法的有效性,从[8] 可以得到验证。然而,算法的效率仍然有待提升。随着大量数据的积累,现实问 题的规模将越来越大,对于计算速度的要求将会越来越高。显然,将算法并行化 或者分布式实现是应对大数据发展行之有效的策略。

厦门大学博硕士论文摘要库

(17)

Degree papers are in the “Xiamen University Electronic Theses and Dissertations Database”.

Fulltexts are available in the following ways:

1. If your library is a CALIS member libraries, please log on

http://etd.calis.edu.cn/ and submit requests online, or consult the interlibrary loan department in your library.

2. For users of non-CALIS member libraries, please mail to [email protected]

for delivery details.

References

Related documents

2.1Java 技术 Java

PSR 模型利用一组称为检验的完全可观测的量来表示系统的状态。PSR

基于 Hadoop 的某广电网络公司的经营分析系统的分析与设计 4 发展为一个大数据分析的领先平台。 Hadoop

第一章 引言 4

D-MetaCost :一种高效多分类代价敏感算法 2 得到数据集学习获得最终模型。 MetaCost 算法现在也应用很广泛,很多实际问 题都借助于 MetaCost 算法进行处理, 但是

基于 J2EE 技术的艺术展品信息管理系统设计与实现 - 4 - 第二章 相关技术介绍 2.1 J2EE 技术

为了更进一步比较本文方案与经典 LS 信道估 计及 OMP 信道估计方案的性能,采用 2.4 节所述的 信道估计 MIMO

随着数据爆炸的时代到来,海量数据存储的问题也随之而来。HDFS(Hadoop Distributed File System)作为主流的开源云计算系统 Hadoop