Redesigning the jMetal Multi-Objective Optimization Framework - Nebro-Urbaneja, Antonio Jesús; Durillo, Juan J.; Vergne, Matthieu (My University, 2015)
jMetal, an open source, Java-based framework for multi-objective optimization with metaheuristics, has become a valuable tool for many researches in the area as well as for some industrial partners in the last ten years. Our experience using and maintaining it during that time, as well as the received comments and suggestions, have helped us improve the jMetal design and identify significant features to incorporate. This paper revisits the jMetal architecture, describing its refined new design, which relies on design patterns, principles from object-oriented design, and a better use of the Java language features to improve the quality of the code, without disregarding jMetal ever goals of simplicity, facility of use, flexibility, extensibility and portability. Among the newly incorporated features, jMetal supports live interaction with running algorithms and parallel execution of algorithms.
Keywords: Soporte lógico libre; jMetal; Optimization framework; Multi-objective optimization; Open-source