Teaching simulation on collaborative learning, ability groups and mixed-ability groups