allow passing objective to optimizer