Factored evolutionary algorithms: cooperative coevolutionary optimization with overlap