There is no generally accepted definition of artificial intelligence "agents." But practitioners know them when they see them. In loose terms, agents are programs that (i) sense their environment, (ii) make decisions about how to act based on these sensations, and (iii) then execute these actions. Autonomous agents do all three of these steps on their own, i.e. without a human in the loop. Multiagent systems are collections of multiple agents that interact with one another.
This course provides a broad introduction to autonomous agents with an emphasis on multiagent systems. Topics includeIt is a programming-intensive course by the end of which, the student will have implemented a full-fledged team of autonomous agents in the RoboCup soccer simulator. At the end of the course, students' teams of soccer-playing agent will compete against each other in a tournament.
Some background in artificial intelligence is recommended, but not required.
Good programming skills, preferably in C++ or Java, are required.
Students will be expected to attend and participate in the class as well as complete assignments in a timely fashion. Grades will be determined based on (proportions are tentative):
Reading, written, and programming assignments will be updated on the
You can go directly to the final project page.
Please subscribe to the class mailing list to receive relevant announcements.
You can find the instructor in WWH 401 from 4pm to 5pm on Tuesdays, immediately before class. The phone number there is 998-3081.
A preliminary version of the syllabus is available here (postscript).
The course textbook is Multiagent Systems: A Modern Approach to Distributed Artificial Intelligence, edited by Gerhard Weiss.
Selected readings from this text will be assigned, along with relevant research papers.
Here are some of the slides used in class.
Page maintained by
Questions? Send me mail