Agent-Based Modelling of Socio-Technical Systems