Autonomous Agents and Multi Agent Systems