Model AI Assignments

EAAI-2014: The Fifth Symposium on Educational Advances in Artificial Intelligence

Quebec City, Quebec, Canada (collocated with AAAI-14)
July 28-29, 2014

          Sponsored by the Association for the Advancement of Artificial Intelligence

2014 Call for Assignments

Project Archive

2013  EAAI-2013: The Fourth Symposium on Educational Advances in Artificial Intelligence Bellevue, Washington, USA (collocated with AAAI-13) July 15-16, 2013  
Recreating Tesauro's TD-Gammon Devika Subramanian Tesauro's TD-Gammon is recreated, implementing TD(lambda) in neural net backgammon player.
Tsunami Warning System: A Case Study of Intelligent Agents in Action Stephanie August This case study analyzes a tsunami warning system (TWS) from the perspective of an intelligent agent, the Tsunami Activity Reporter (TWR). Students receive a description of the TWR and an overview of a warning system from the National Oceanic and Atmospheric Administration, then design an intelligent agent using the PEAS framework.
An Introduction to Counterfactual Regret Minimization Todd Neller, Marc Lanctot Learn the game-theoretic regret-based techniques that spurred a revolution in competitive computer poker.

 2012  EAAI-2012: The Third Symposium on Educational Advances in Artificial Intelligence, Toronto, Ontario, Canada (collocated with AAAI-12), July 23-24, 2012 
Vitro - A Simulation and Visualization Framework to Engage Learning: Reversi Model Assignment Exemplar Laura E. Brown, John Earnest, and Jason Hiebel The classic two-player board game Reversi (also called Othello™) will be the domain for learning and implementing adversarial search methods. Students will implement minimax and alpha-beta pruning algorithms and design evalutaion functions for this domain. A Tic Tac Toe domain is also provided for illustrating concepts in a small scale and for testing purposes.
Music Genre Classification Douglas Turnbull Students explore the engaging topic of content-based music genre classification while developing practical machine learning skills.
Solving the Dice Game Pig: an introduction to dynamic programming and value iteration Todd Neller Pig, a popular folk jeopardy dice game, serves as a fun focus problem for this introduction to dynamic programming, value iteration, and basic concepts of reinforcement learning.

 2011  EAAI-2011: The Second Symposium on Educational Advances in Artificial Intelligence, San Francisco, California (collocated with AAAI-11), August 9-10, 2011
Clue Deduction: an introduction to satisfiability reasoning Todd Neller The popular boardgame Clue (a.k.a. Cluedo) serves as a fun focus problem for this introduction to propositional knowledge representation and reasoning.
Mastermind Project Marie desJardins, Tim Oates As a final project for an introductory AI course, students work in small groups to design a scalable guessing algorithm for the game of Mastermind. There are three "challenges": a fixed-size problem, a "scalability challenge" , and a "learning challenge".
The Mario Project Matthew Taylor This assignment is appropriate for a course with a reinforcement learning component (i.e., Introductory AI or Machine Learning). In it, students are asked to implement, test, and evaluate multiple reinforcement learning algorithms within the Generalized Mario domain.

 2010  EAAI-2010: The First Symposium on Educational Advances in Artificial Intelligence, Atlanta, Georgia (collocated with AAAI-10), July 13-14, 2010
The Pacman Projects Software Package for Introductory Artificial Intelligence John DeNeroDan Klein The Pac-Man projects apply an array of AI techniques to playing Pac-Man.
A Project on Fast Trajectory Replanning for Computer Games for "Introduction to AI" Classes Sven Koenig, William Yeoh In this project, the students need to code A* and then extend it to Adaptive A*. Adaptive A* is a fast path replanning algorithm which moves game characters in initially unknown gridworlds to a given target.
Getting Set with OpenCV Zachary Dodds This assignment asks students to build a program that plays the game of Set, making use of the OpenCV library, the largest and most ubiquitous software foundation for real-time vision processing.
Rook Jumping Maze Generation Todd Neller With Rook Jumping Maze generation as the fun central challenge, students integrate techniques from uninformed search, stochastic local search, and machine learning.
Assignment on CSPs for first undergraduate AI course Giuseppe Carenini, David Poole This assignment covers most of the basic principles and techniques involved in solving constraint satisfaction problems, with applications ranging from games (sudoku) to configuration and scheduling problems.
A Project on Gesture Recognition with Neural Networks for “Introduction to Artificial Intelligence” Xiaoming Zheng, Sven Koenig In this project, the students need to understand and extend an existing implementation of the back-propagation algorithm and use it to recognize static hand gestures in images.
Introduction to Genetic Algorithms Chris Brooks In this assignment, you will work with partially-completed code for a genetic algorithm, adding crossover, selection and mutation operators.
A Project on Any-Angle Path-Planning for Computer Games for "Introduction to Artificial Intelligence Sven Koenig, Kenny Daniel, Alex Nash In this project, the students need to code A* and then extend it to Theta*. Theta* is an any-angle path-planning algorithm which plans paths for game characters in known gridworlds.

Important Dates:

  • February 10, 2014: Author registration and electronic paper submission deadline
  • March 19, 2014: Author notification
  • April 15, 2014: Final assignment abstract and assignment revisions due
  • April 22, 2014: Camera-ready copy of extended abstract of the Model AI Assignments Session due at AAAI office
  • July 28-29, 2014: Symposium

What is the Model AI Assignments Session?

The Model AI Assignments Session seeks to gather and disseminate the best assignment designs of the Artificial Intelligence (AI) Education community.

One must learn by doing the thing; for though you think you know it, you have no certainty, until you try. - Sophocles

Recognizing that assignments form the core of student learning experience, we invite AI educators to submit draft assignment materials that exemplify an approach to teaching AI topics at all levels.

Submission Ideas

Consider these challenges in assignment design:

  • Intro AI audience: Submit your favorite assignment that grounds one of the core AI concepts at the introductory level (e.g. search, constraint satisfaction, knowledge representation and reasoning, planning, probabilistic reasoning, machine learning, robotics, machine vision, etc.).
  • K-12/CS1/CS2 audience: Some AI assignment experiences are designed to communicate the techniques, potentials, and challenges of the discipline.  Submit an assignment that you believe will be most likely attract the next generation of AI practitioners.
  • Emerging topics: When a new algorithm has high impact in a research area, there is a need to introduce the algorithm not only to students, but to all AI researchers as well.  The creation of initial high- quality assignments to teach such groundbreaking techniques can accelerate research advancements and keep AI material fresh at all levels.  Submit an assignment which introduces an recent new algorithm or emerging subfield.

Whether sharing the best of your time-tested assignment designs, or offering a timely new creation, please consider how your creative assignment ideas can attract and prepare the next generation of AI researchers, or accelerate the advancement of the current generation.


The Model AI Assignment Session is a part of EAAI-14: The Fourth Symposium on Educational Advances in Artificial Intelligence.  This will be held July 28-29, 2014 in conjunction with AAAI-14 in Quebec City, Quebec, Canada.

Registration: To register for EAAI-14, participants can register for AAAI-14 ( and include EAAI-14 as an additional (free) item in their registration cart. Participants may also register for EAAI alone.

EAAI-14 Organizing Committee:

Laura Brown (co-chair), Michigan Tech University (
Todd Neller (co-chair), Gettysburg College (
Chris Brooks, University of San Francisco (
John DeNero, Google Inc. (
Eric Eaton, Bryn Mawr College (
Ashok Goel, Georgia Institute of Technology (
David Kauchak, Middlebury College (
Devika Subramanian, Rice University (
Matthew Taylor, Lafayette College (

Model Assignment Considerations

As with SIGCSE's Nifty Assignments, EAAI Model AI Assignments should be:

  • Adoptable - Provide materials to make the assignment easy for other instructors to adopt.  Materials might include handouts in common formats (e.g. HTML, PDF), starter source code, data files, suggestions for use, etc. 
  • Engaging - Model assignments often have a playful "fun factor" or impressive outcome.  The applications spark interest in the topic, lead to deeper understanding, and are accomplishments likely to be shared with others.
  • Flexible/Scalable - Language/platform independence, while not required, would allow more widespread use over time.  Suggestions of possible follow-on projects, further readings, or other open ends invite continued learning.  Advise for variations in assignment design can help other instructors create unique (i.e. not easily plagiarized) assignment experiences for their students.


Model Assignment submissions must be made in two parts:

Assignment submission directions: Create a directory named with your last name, a hyphen, and the name of the assignment (e.g. Dodds-SetOpenCV).  Place all of your materials in this directory, and create an index.html file.   (Our goal is to create an archive of assignments, rather than link to resources elsewhere.  We will gladly update materials in our archive as authors direct.)  In this index.html file, create a table like the one below filled in with brief information about your assignment (replace the italicized text with your own):

Summary Describe your assignment in a few sentences here.
Topics List the AI topics relevant to the assignment.
Audience Describe the intended audience (e.g. Introduction to AI, K-12, Advanced AI)
Difficulty Describe the perceived assignment difficulty and time needed for the audience to complete the assignment.
Strengths Describe the assignment strengths.
Weaknesses Describe the assignment weaknesses.
Dependencies List the necessary prerequisite topic knowledge.  Describe computing requirements, such as necessary operating system(s) and/or programming language(s), if any.
Variants In a few sentences, describe possible ways in which other instructors can vary the assignment, learn from its design, and/or encourage follow-on assignment work.

Then add links to the assignment materials in your directory (e.g.  handouts in common formats (e.g. HTML, PDF), starter source code, data files, suggestions for use, etc.).  These need not be polished for submission; a draft is sufficient. Assignments should be anonymous for blind review. (Your directory will be renamed with a number before review.)

Finally, zip the directory (e.g., and email it to Todd Neller ( with the subject line "Model Submission: " followed by the filename. (Please add "Model" to the subject line for all Model Assignments Session email.)

Abstract submission instructionsCreate a 200 word PDF abstract describing your assignment according to the AAAI author instructions.  Submit your anonymous abstract according to the paper submission instructions on the EAAI site via the EAAI Confmaster site.  Accepted submission abstracts will be included in an extended abstract of the Model AI Assignments Session.