When designing or analyzing multi-agent systems, a fundamental problem is responsibility ascription: to specify which agents are responsible for the jot outcome of their behaviours and to what extent. I shall talk about a formal definition of responsibility allocation, argue through examples why it is a good definition, and point out where it is inadequate.