# A Metaheuristic Framework with Experience Reuse for Dynamic Multi-Objective Big Data Optimization
## 3 The Proposed Framework  
Motivated by the new challenges brought by big data, JDBDO is implemented to apply metaheuristics to solving DMBDOPs. JDBDO is designed modularly to ensure sufficient flexibility and provide a clear architecture. Researchers could use the algorithms and problems integrated within the framework to efficiently achieve their own research goals. Researchers could also quickly extend modules to develop new algorithms or expand upon new problems.  
**Dynamic multi-objective big data optimization-oriented framework.** JDBDO integrates metaheuristic algorithms so that researchers can try different ways to solve DMBDOPs and verify their ideas efficiently. Moreover, JDBDO provides different test suites for DMBDOPs. Thus, researchers could choose different problems to experiment with according to the type of their algorithms. JDBDO is now developed as a metaheuristic framework or toolkit for DMBDOPs, providing practical tools for developing algorithms and big data analysis. In addition, performance indicators, cooperating with algorithms, are provided for experimental studies. In the future, we hope to continuously enrich and extend JDBDO and make it serve as a mature platform for both big data applications and optimization research.  
**Optimization components.** A dynamic multi-objective big data optimization process comprises a dynamic metaheuristic algorithm, operators, a termination criterion, and a restart strategy. Four dynamic metaheuristic algorithms are available in the framework, covering EAs and SI algorithms, to provide users with different algorithm templates that are easy to modify and imitate. In addition, different operators are implemented to meet different evolutionary needs. Furthermore, when the problem changes, the algorithm has to terminate the current run and restart, so termination criteria and restart strategies are also provided in MBDO. Some of these components are implemented based on our own design and some good features of jMetal [32] version 5.10.  
**Experience reuse and parallel computing.** The complexity of dynamic multi-objective big data optimization is not just about the scale of the data. The frequency and changes define the dynamic nature of big data. When dealing with this kind of problem, computing speed and efficiency have to be considered. Therefore, this work adopts two ways to improve computational efficiency. JDBDO has been integrated with an experience reuse method based on problem similarity comparison to obtain a better initial population faster after each problem change. In addition, JDBDO implements parallel computing on Apache Spark, further improving computing efficiency.  
**Problems.** JDBDO now integrates a test suite that contains three sets of problems of different types and difficulties for 13 DMBDOPs. Several methods for updating problems are supplied. In addition, two extra test suites containing some classical MOPs and DMOPs are provided to facilitate testing at different stages of algorithm design and implementation. Also, some of these problems provide essential support for the implementation of DMBDOPs. It has to be noted that all the test suites contain only problems with two objectives.  
**Analytic tools.** Analyzing the solutions obtained by the algorithm is a vital issue in the research, so JDBDO has implemented different analysis tools for researchers to select, including performance indicators and data visualization tools. Users can select specific indicators to evaluate solutions obtained by their algorithms and monitor the nearly optimal PFs obtained by an algorithm in real-time during the dynamic optimization process. Moreover, a tool for analyzing the running state of the system is under development.