add new algorithm and some change in algorithm controller