AI: Homework

University of Illinois

General information about homework


There will be 6 MPs, with two weeks to finish each one. A link will appear here as each MP is ready.


All MPs will be individual assignments.

You may submit as many times as you like. It is wise, and recommended, that you submit every time you get part of the MP working, so that, in case of disaster, at least you'll get partial credit. Your last submission is the one counted, unless you tell us otherwise.

Not all tests are visible. We will provide test examples, to help you determine whether or not your code is working correctly. In addition to these tests, the autograder will also run other tests. It is your responsibility to do testing as necessary to make sure your code meets the assigned requirements.

Late penalty: your autograder score will be multiplied by 0.5+0.5*exp(-t/168), where t is your Gradescope "lateness" score, in hours. You can earn up to 50% by submitting your homework at any time before the end of the semester. The main assignment and the extra credit assignment can each have a different late penalty, if they are submitted on different days. If an MP has multiple assignments (as on MP4), then you can submit each assignment on a different date. We will only grade one submission per assignment; we will grade the latest one submitted, unless you choose a different one using the "grade this submission" feature on Gradescope.

Regrade requests: may be submitted using gradescope's regrade request feature.

Programming language

The MPs will be written in Python. If you've never used Python before, you should start getting used to it now, rather than waiting for the release of the first MP. A good place to start is the Python Tutorial (also available in hardcopy form). You should install version 3.8 or 3.9 on your computer, as well as the pygame graphics package.

Most of you will find it more convenient to develop code on your own machine. However, you can also use linux machines in the EWS labs. Notice that the software provided for certain MPs will require graphics, in which case it is unlikely to run over a remote terminal connection.

Your code may import extra modules, but only ones that are part of the standard python library. Unless otherwise specified in the instructions for a specific MP, the only external library available during our grading process will be pygame.