CMSC 477/677

Agent Architectures and Multi-Agent Systems
Spring 2007

When: Tuesday/Thursday 1:00-2:15
Where: AC IV 014


Prof. Marie desJardins
ITE 337
(410) 455-3967 / fax (410) 455-3969
mariedj @

Course Description

This class focuses on fundamental techniques for developing intelligent agents and multi-agent systems. In the first part of the class, we will study a wide variety of architectures for building intelligent agents, including cognitive, logic-based, reactive, and belief-desire-intention architectures. We will read, discuss, and compare research papers on each of the models. In the second part of the class, we will learn about key issues in designing and implementing multi-agent systems, including inter-agent communication languages and protocols, distributed problem solving, planning, and constraint satisfaction methods, distributed models of rational behavior, and learning and adaptation in multi-agent systems. Coursework includes a programming project, an in-depth survey paper on one of the course topics, an in-class presentation of the survey paper, and participation in a multi-agent game tournament.


CMSC 471 or CMSC 671. (Undergraduates, and any student who has not taken the prerequisite class, must have the permission of the instructor to enroll.)


  1. A variety of technical papers throughout the course. Links to online versions of most papers can be found in the syllabus. The other papers will be handed out in class.
  2. Michael Wooldridge, An Introduction to Multiagent Systems.  John Wiley & Sons, 2002.  ISBN#  047149691X. Available at the bookstore.

Academic Objectives

The objectives of the course are for students to gain an in-depth understanding of intelligent agent architectures and multi-agent systems techniques; to read and analyze technical papers critically; to communicate effectively in group discussions, class presentations, and technical papers; and to design and implement a research-oriented course project. Graduate students are expected to display a higher level of sophistication in their critical reading, discussion, and literature survey, and will be graded accordingly.


The course schedule can be found here.

Coursework and Grading

Course grades will be based on class participation (participating in and leading discussions), paper summaries, two projects/papers, a paper review, and (for CMSC 677) two problem sets. There will not be any exams.
Assignment 477  
Class discussion 30%
Discussion leading 5%
Paper summaries 5%
Agent architectures project    20%
Multi-agent survey paper 20%
MAS presentation

Paper review

MAS game tournament

Problem sets (2) --

Class participation (35/30% total). This class is a seminar, designed not only to teach the students about agent architectures and multi-agent systems, but to hone your skills in reading and evaluating technical papers, discussing and comparing different approaches, and applying these methods in practice. This course format demands that all students participate actively in class discussions (30/25%). (Students who are not comfortable speaking up in a class, and who do not wish to improve their skills in "public" speaking, should probably not take this class!) Students are expected to read the assigned papers or chapters prior to each class.  Students are expected to attend every class; if absence is unavoidable, you should notify the instructor of your absence in advance.  Although I will make every effort to post assignments and updates on the course website, you are responsible for what was covered in class, whether you are there or not.

Most classes will be primarily discussion sessions. For these classes, there will be an assigned discussion leader (5%). The discussion leader is expected to prepare discussion questions in advance of the class, give a brief (5- to 10-minute) summary of the key points of the assigned reading, and then lead the discussion, guided by the discussion questions. Your grade as discussion leader will be based primarily on the quality of your questions and on your summary presentation.

Paper summaries / questions (5%). Each student will be required to submit short paper summaries and discussion questions of the assigned readings throughout the semester.  Specific requirements for each class meeting will be given during the previous class.

Agent architectures project (20%/15%). For the Agent Architectures part of the class, each student will be required to download the public-domain version of one of the implemented architectures we will study, identify additional reading beyond the assigned papers on that architecture, apply the software to a new application domain, demonstrate the application, and write a report about their project. Students may work individually or in teams of two or three on these projects. (Students and/or teams working on the same architecture are encouraged to share the work of downloading and finding papers on the architecture, even if they do separate projects.) A project proposal  (5% of project grade),  draft project report (5%), project report (65%), and a demonstration (25%) are required. Students enrolled in 677 are expected to submit an in-depth analysis of the project, including relating their findings to the research literature.

MAS survey paper (20%). In the Multi-Agent Systems part of the class, students will write a survey paper on a topic of their choice in multi-agent systems. A proposal and bibliography (10% of project grade), draft report  (10%), and final report (80%) will be required. Students enrolled in 477 may focus on one or two recent research papers. Students in 677 should include a bibliography of 5-10 (or more) additional papers, an in-depth discussion of the related work in the field, and a discussion of open problems.

MAS paper presentation (5%). Students will read and present one recent research paper. (For most students, this will be a paper from your MAS survey paper.) Students in 677 must also identify and summarize 3--5 related research papers, and discuss the relationships between their chosen paper and the other work in the field.

Paper review (5%). Each student will be randomly assigned another student's draft MAS project report to review and comment on.  This will give you an opportunity to learn more about that student's topic, and also a chance to gain hands-on experience with the reviewing process for technical papers. We will discuss the criteria for a "high-quality" review prior to this exercise. The review will be due one week after the draft reports are submitted.

MAS game tournament (10%). Towards the end of the semester, a multi-agent systems tournament will be scheduled, centered on a game such as the iterated Prisoner's Dilemma or the Trading Agent Competition.  Each student will be required to implement a player for the tournament, and submit a short report on their design and their agent's performance.

Problem sets (10% for 677). Students enrolled in CMSC 677 will be required to complete two additional problem sets.

Late policy. Late assignments will only be accepted if an extension is requested and granted in advance.

Academic Honesty

By enrolling in this course, each student assumes the responsibilities of an active participant in UMBC's scholarly community, in which everyone's academic work and behavior are held to the highest standards of honesty.  Cheating, fabrication, plagiarism, and helping others to commit these acts are all forms of academic dishonesty, and they are wrong. Academic misconduct could result in disciplinary action that may include, but is not limited to, suspension or dismissal.  To read the full Student Academic Conduct Policy, consult the UMBC Student Handbook, the Faculty Handbook, or the UMBC Policies section of the UMBC Directory. [Statement adopted by UMBC's Undergraduate Council and Provost's Office.]

All students must read, understand, and follow the CMSC 477/677 course policy on academic honesty and grading. Each student will be asked to sign a copy of the academic honesty/grading policy, indicating that they have read and understood it.

Cheating in any form will not be tolerated. In particular, all assignments are to be your own work. You may discuss the assignments with anyone. However, any help you receive must be documented explicitly.

Written answers on class reports must be your own work. If you wish to quote a source, you must do so explicitly, using quotation marks and proper citation at the point of the quote. Plagiarism (copying) of any source, including another student's work, is not acceptable and will result in at a minimum a zero grade for the entire assignment. A useful guideline is that if more than two or three words in a row are the same in your report as in the original source, you have plagiarized. (Even in your reading journals, you should indicate which notes are direct quotes and which are your own words; this is a good habit to get into, so that if you ever write a passage based on your notes, you don't unintentionally plagiarize the original source.) gives an excellent overview of how to correctly cite a source. has guidelines on acceptable paraphrasing.  (See also the other documents at for useful suggestions on writing and citing sources.)

477/677 Mailing List

There is a class mailing list,, to which you should subscribe. (Send a message to with the line "subscribe agents-class YOUR NAME," where YOUR NAME is your first and last name.) Class announcements and discussion of assignments will be posted on this list. You can also send messages to the list to ask questions of your fellow students and/or professor.

General questions (i.e., anything that another student may also be wondering about) should be sent to the list, so that everyone will be able to benefit from the answers. Students are welcome to post answers to questions, even if the questions were directed at the course staff. Individual concerns, questions about grades, and the like should be sent to Prof. desJardins rather than the list.