Adaptive multi-task evolutionary algorithm based on knowledge reuse