Multi-Agent Systems introduces the student to systems composed of multiple interacting intelligent agents. An agent is a computational being, such as a software program, robot or human. Agents operate in some environment, which they can observe and in which they can realize objectives through the execution of actions. Multi-agent systems are an enabling technology for applications that rely on distributed and parallel processing of data, information and knowledge in complex computing environments. Due to advances in inter-connectivity and interoperability of computers and software such applications are becoming standard in a variety of domains such as e-commerce, logistics, supply chain management, telecommunication, health care and manufacturing. This course covers the key conceptual, theoretical and practical foundations of multi-agent systems. The following topics, among others, will be discussed: agent-agent communication, automated negotiation and argumentation in cooperative and competitive settings, multi-agent learning and planning, automated decision making based on voting and auctioning, and development and engineering of agent-based systems. After completing this course student will be familiar with the underlying theory of agents, and multi-agent systems. The student will be able to judge whether a multi-agent approach is beneficial to use over other approaches for handling the same problem.
Basic logic, basic mathematics, probability theory and Java programming.
Multiagent Systems Algorithmic, Game-Theoretic, and Logical Foundations” by Yoav Shoham and Kevin Leyton-Brown. Cambridge University Press, 2009. This book is also available as ebook: http://www.masfoundations.org/.