Modeling Role-based Interactions for Agents