88 SHI R F, ZHANG N, JIAO R H, et al.
based on Maurice et al. in 2001.
Compared to single objective evolutionary algorithm, performance evaluation of multi-
objective evolutionary algorithm includes two aspects: that the algorithm solutions approx-
imate the real non-inferior frontier and the solutions number. Thus it is difficult to evaluate the
algorithm performance properly through a direct index. Scholars specially designed generation
distance (GD), convergence index, diversity index δ and other indirect indices to evaluate the
algorithm’s performance
[9−11]
.
Previous studies mostly established the algorithm research platform, packaging the algo-
rithm general framework and operator code to simplify operation in order to facilitate the use
of researchers
[12−13]
, but the performance of optimization algorithms is not discussed. Based
on the tracking evaluation research on the existing evolutionary algorithm, this paper presents
graphical display method for tracking evolutionary algorithm online performance based on
Python programming language. Through example analysis for tracking online performance of
two typical evolution algorithms, the feasibility of this method is validated preliminarily.
2 Online graphical performance exploitation with Python program-
ming language
The benefit of Python programming language lies in its merits of simple, easy, free, open
source, portability, interpreted, object-oriented, scalability, embedded rich library, standard
code and a series of advantages. Tracking and displaying online performance of an evolutionary
algorithm with Python programming language is feasible and potentially high efficiency. The
Matplotlib drawing database of Python programming language is introduced to draw the EA
algorithms performance with different parameter indices.
Matplotlib is a pure independent Python library, which is similar to Matlab. M atplotlib
is the most excellent graphics library, and its function is perfect. Its style is very similar to
Matlab, but also inherited simple and clear style of Python. It is convenient to design and output
of 2D and 3D data, which provides the conventional Descartes coordinates, polar coordinate,
Spherical coordinate, 3D coordinate. The drawing aim is to appear the function with image,
so we have to deal with two things using Python, one is the function and another is the image.
The part of function uses Numpy which is three party libraries in M atplotlib use. Numpy is
powerful and easy to use.
Matplotlib can conveniently draw scatter fine figure. When drawing scatter diagram,
Matpoltlib library is referenced with sentence of “import pylab” first, and then the scatter
diagram is drawn with the function of scatter.
3 Framework of performance tracking programming for two typical
evolutionary algorithms
Based on the understanding of the Matplotlib, in order to realize the tracking and display for
online performance of GA and PSO algorithms, we review the basic principle of the two typical
algorithms; and the frame of tracking and display for online performance based on Python is
inserted into the procedure of the two algorithms; then the pseudo-code of this process is shown
for further study.