CS344M: Autonomous Multiagent Systems -- Fall 2015

CS344M: Autonomous Multiagent Systems -- Fall 2015

Instructor: Patrick MacAlpine
Department of Computer Science

Tuesday, Thursday 12:30-1:45pm
GDC 5.302

Jump to the assignments page.
Jump to the resources page.

Instructor Contact Information

office hour: Tuesday 2:00-3:00 PM or by appointment
office: GDC 3.504F
email: patmac AT cs.utexas.edu

Teaching Assistant

Sanmit Narvekar
office hours: Wednesday 3:00-4:00 PM or by appointment
office: GDC 3.424E
email: sanmit AT cs.utexas.edu


Good programming skills, preferably in C and/or C++. Some background in artificial intelligence is recommended but not essential.

Syllabus and Text

This page serves as the syllabus for this course.
The course textbook is An Introduction to Multiagent Systems
by Michael Wooldridge.
Here is an partial online preview edition.
Here is a complete online version of the old edition from the UT library (Search for "An Introduction to Multiagent Systems").
Selected readings from this text will be assigned, along with relevant research papers.


Reading, written, and programming assignments will be updated on the assignments page. A tentative schedule for the entire semester is posted. But the readings and exercises may change up until the Tuesday before they are due (1 week in advance).
You can go directly to the final project page. To see your grades go to Canvas.


Please enroll in the class on Piazza.
Important class information may be sent to this list. It is the student's responsibility to be subscribed.

Philosophy and Goal

The foremost goal of this course is to expose the student to the full range of activities required of a real-life computer science researcher. It turns out that computer scientists rarely read textbooks, sit silently in lectures, work on programming assignments with correct and complete answers, or take exams. Rather, they

Most upper-division CS students have determined that they enjoy taking CS classes (or at least that they're relatively good at it). However, this determination may not be indicative of a propensity for computer science research. This course presents an opportunity for students to help decide whether they would enjoy going on to graduate school and an eventual career as a computer science researcher. In particular, students will be required to read published research papers, write brief reactions to them, participate in class discussions, propose and execute a solution to a challenging open-ended problem, and write about their work. They will be given an opportunity to collaborate with one other student on the final project.

The content of the course will be related to autonomous agents. In order to succeed, students will need to attain a mastery of the subject. However evaluation will be based primarily on the above activities. There will be no exams.

Content Overview

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 include

There will be incremental programming assignments leading to a final project, and ultimately a tournament competition in the RoboCup soccer simulator. Students will be encouraged to work in pairs on the final project.

The course also has a significant writing component and carries the writing flag. Brief written answers to questions based on the reading will be assigned weekly. There will be a project proposal halfway through the semester with an opportunity for revisions in the form of a progress report. Students will also be required to perform peer reviews on two classmates' progress reports. The grade for the final project will be based largely on the written report due at the end of the semester.

We are fortunate to have a University Writing Center Course Specialist Consultant assigned to this course to help with writing:
Carlos Salamanca
email: chsalamanc AT utexas.edu
Information about the University Writing Center Course Specialist Consultant program

This course also carries the independent inquiry flag. As part of the goal of this course is to introduce the student to research, the students will be engaged in the process of inquiry. They will be required to generate ideas and programs, critically discuss ideas, and write and present their own ideas.

Participation in the class discussions will also form a significant part of the grade. Class meetings will consist of discussions based on assigned readings.

Content Objective

With respect to content, the goal of this course is to give the student an appreciation for the broad research topics currently being pursued in the field of autonomous agents and multiagent systems. By the end of the course, the student should be able to

The course is designed to include key activities engaged in by researchers, including generation of ideas and programs, critical oral discussion of ideas, and written evaluation and presentation of ideas.

The course is designed to present a solid entry point to the field of artificial intelligence. For those students with interest, it could possibly lead to subsequent research opportunities.

Course Requirements

Written responses to readings-based questions (15%):
Weekly readings will be posted on the class website on Tuesday to be due the following Tuesday. Associated with most readings will be questions that should be answered with concise, well-thought-out, coherent written responses by email to the instructor and the TA. The email should be in plain ascii text in the body of the email (not an attachment). Please use the subject line "Week [?] readings". In some cases, no specific questions will be posted. In those cases, the responses should be free form. Credit will be based on evidence that you have done the readings carefully. Acceptable responses include (but are not limited to):
  • Insightful questions;
  • Clarification questions about ambiguities;
  • Comments about the relation of the reading to previous readings;
  • Critiques on the research;
  • Critiques on the writing style or clarity;
  • Thoughts on what you would like to learn about in more detail;
  • Possible extensions or related studies;
  • Thoughts on the paper's importance; and
  • Summaries of the most important things you learned.
  • These responses will be graded on a 10-point scale and graded mostly on written expression and coherence of argument (most questions will not have a ``right'' answer). Answers will be due by 9pm on Monday. Responses received between then and 11a.m. on Tuesday will be deducted 1 point (for a maximum score of 9). Responses received between then and 11a.m. on Thursday will be deducted 2 points (for a maximum score of 8). Responses received after that will be deducted 4 points (for a maximum score of 6).

    These deadlines are designed both to encourage you to do the readings before class and also to allow us to incorporate some of your responses into the class discussions.

    Class participation (15%):
    Students are expected to be present in class having completed the readings and participate actively in the discussions.

    Initial programming assignments (10%):
    A series of 4 incremental programming assignments will be assigned during the first half of the semester. Their purpose is to familiarize you with the software you will be using in the final project and to give you direct experience with some of the concepts covered in the readings.

    Project proposal draft (5%):
    Midway through the semester, you will propose a topic for your final project. The proposal will be in written form. You are expected to propose to work with one other student on the final project, but each student must turn in an independently-written proposal and final report. The draft will be evaluated primarily on written expression and coherence of argument. Feedback will be given both on writing and content.

    Project progress report (10%):
    The progress report is mainly a revision of the proposal. It should take into account both types of comments given on the proposal. Expect it to require significant rewriting, as opposed to just editing of the proposal. In addition, it should include an update on progress to date. It will be graded primarily on written expression and coherence of argument. Feedback will be given on content.

    Peer review (10%):
    Students will be expected to do critical peer reviews of two classmates' progress reports. The feedback should be detailed, constructive, and prompt.

    Final programming project (competition) and written report (35%):
    In most cases, the culminating assignment for the course will be a full-fledged robot soccer team for entry in a class tournament. Other options will be possible if agreed upon at proposal time. The grade for the final project will be based upon the final product (program) and the written report, which should detail what was done and relate it to the class readings. The grade will not be tied to performance in the tournament. At the final tournament, students will describe their final projects orally.

    Extension Policy

    If you turn in your assignment late, expect points to be deducted. No exceptions will be made for the written responses to readings-based questions (subject to the ``notice about missed work due to religious holy days'' below). For other assignments, extensions will be considered on a case-by-case basis, but in most cases they will not be granted.

    For the penalties on responses to the readings see above (under course requirements). For other assignments, by default, 5 points (out of 100) will be deducted for lateness, plus an additional 1 point for every 24-hour period beyond 2 that the assignment is late. For example, an assignment due at 2pm on Tuesday will have 5 points deducted if it is turned in late but before 2pm on Thursday. It will have 6 points deducted if it is turned in by 2pm Friday, etc.

    The greater the advance notice of a need for an extension, the greater the likelihood of leniency.

    Academic Dishonesty Policy

    You are encouraged to discuss assignments with classmates. But all written work must be your own. And programming assignments must be your own except for 2-person teams on the final project. All work ideas, quotes, and code fragments that originate from elsewhere must be cited according to standard academic practice. Students caught cheating will automatically fail the course. If in doubt, look at the departmental guidelines and/or ask.

    Notice about students with disabilities

    The University of Texas at Austin provides upon request appropriate academic accommodations for qualified students with disabilities. To determine if you qualify, please contact the Dean of Students at 471-6529; 471-4641 TTY. If they certify your needs, I will work with you to make appropriate arrangements.

    Notice about missed work due to religious holy days

    A student who misses an examination, work assignment, or other project due to the observance of a religious holy day will be given an opportunity to complete the work missed within a reasonable time after the absence, provided that he or she has properly notified the instructor. It is the policy of the University of Texas at Austin that the student must notify the instructor at least fourteen days prior to the classes scheduled on dates he or she will be absent to observe a religious holy day. For religious holy days that fall within the first two weeks of the semester, the notice should be given on the first day of the semester. The student will not be penalized for these excused absences, but the instructor may appropriately respond if the student fails to complete satisfactorily the missed assignment or examination within a reasonable time after the excused absence.


    Week Dates Topic
    0 8/27 Introduction
    1 9/1,3 Autonomous agents
        programming assignment 1 due Thursday
    2 9/8,10 Agent architectures
        programming assignment 2 due Thursday
    3 9/15,17 Multiagent systems
        programming assignment 3 due Thursday
    4 9/22,24 Agent communication and Teamwork
    5 9/29,10/1 RoboCup case studies
        programming assignment 4 due Thursday
    6 10/6,8 Swarms and self-organization
        project proposal draft due Thursday
    7 10/13,15 Applications
    8 10/20,22 Game theory
    9 10/27,29 Game theory II
    10 11/3,5 Multiagent learning
        project progress report due Thursday
    11 11/10,12 Distributed rational decision making
        progress report peer review due Thursday
    12 11/18,21 Auctions
    13 11/24 Agent modeling
    14 12/1,3 Entertainment Agents
        final project due Tuesday, report due Thursday
    Final 12/9, 7-10pm final tournament (oral project report)


    Slides from the classes as well as other resources are posted on the class resources page.

    Relevant Links

  • This course is based on eight previous instantiations of the course: seven taught here during the fall of 2012, fall of 2010, spring of 2008, spring of 2006, the spring of 2005, the spring of 2004 and the fall of 2002, and one taught at NYU during the fall of 2001. If you look there, you can get a sense of the assignments and slides to come.
  • If you would like an overview of artificial intelligence prior to the course, I recommend Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig.
  • RoboCup, the robot soccer world cup.
  • The RoboCup Soccer Server System (2D) and RoboCup Soccer Server System 3D used as the simulators for the programming assignments in this course.
  • The Austin Villa Robot Soccer team and Austin Villa 3D Simulation team

  • [Back to Department Homepage]

    Page maintained by Patrick MacAlpine
    Questions? Send me mail