added init functions for agents