Large scale optimization of computationally expensive functions: An approach based on parallel cooperative coevolution and fitness metamodeling