Add algorithm collection, self optimization