An Introduction to MultiAgent Systems