|Homework #||Due Date||Points||Assignment|
|0||Fri. 8/27||1||Math Self Diagnostic: Practice|
|2||Wed. 9/8||100||Constraint Satisfaction Problems|
|4||Fri. 9/24||100||Markov Decision Processes|
|5||Wed. 9/29||100||Reinforcement Learning|
|6||Fri. 10/15||100||Bayes Nets: Representation and Independence|
|7||Wed. 10/20||100||Bayes Nets: Inference and Sampling|
|8||Mon. 10/25||100||Value of Information and Hidden Markov Models|
|9||Fri. 10/29||100||Particle Filtering and Naive Bayes|
|11||Mon. 11/15||100||Gradient Descent and Neural Networks|
|Project #||Due Date||Points||Assignment|
|2||Mon. 11/25||100||GRAD CREDIT ONLY - Programming Project|
|Program #||Due Date||Points||Assignment|
|0||Fri. 8/27||1||Unix/Python Tutorial|
|2||Fri. 9/24||25||Multi-Agent Pacman|
|3||Wed. 10/13||25||Reinforcement Learning|
|5||Wed. 11/24||25||Machine Learning|
Homework Assignments. You need not submit homework assignments to Moodle - I will have access to your submissions on Gradescope. As of now, there is one assignment that will not be autograded (HW12: Logical Inference). If I don't get it on the Gradescope platform by the end of the semester, you must complete and submit as a document to Moodle, but I will try to automate it.
Programming Assignments. All project and program assignments need to be submitted via Moodle. In the event of a Moodle failure, email your submission to me before the deadline. You should upload all the source files required by the assignment. You should also include any other files required to run your solution, but not the unmodified files that were provided to you. The top of every source file submitted should include your name and a description of what the file does or what you added/modified.
Project Assignments. The paper should also be submitted via Moodle. I prefer that you submit it in MS Word format.
Deadline and late policy:
All assignments are due on the stated date by 11:59 that night. Assignments arriving even one minute late are considered late. Since we are using the Berkeley course platform, all assignments are autograded, so I anticipate little to no delay between the time you turn in your assignment and the time it is graded. Therefore, unless there is a very valid reason for turning in something late, late submissions will not be accepted.
As I said, I will be using the Berkeley autograder. You can use this too, so you know how well you are doing. On the homework assignments, you should know right away if you got a question correct or not. If you get an incorrect answer, try to understand why, because it is likely that similar questions will be on exams.
You can also run the provided autograder on your code.
You should know right away if you are getting the correct output or not.
On programs, I reserve the right to deduct points for poor program style or commenting - or add points for particularly good solutions.
Partial credit is always possible so if you run out of time, submit what you have.
If you want to do well, start well in advance of the deadline.
The programs will take a good chunk of time, a lot of it just trying to understand what you are expected to do and what has been provided for you.
Papers will be graded using the department's standardized grading criteria: Standardized written assessment
Programming is a creative process and no two programmers will solve the same problem in the same way. You are encouraged to discuss how to design a solution to a given problem with your classmates. But when it comes time to convert your design into code, you must write the code yourself. Be sure not to leave copies of your code where others might be able to access it (such as in the recycling bin of a lab computer). You may adapt code from the CSCI 446 course materials and the website, provided you cite what code you used in your program's comments.
Under no circumstances should you copy another person's code. Copying code from another student can result in an F in the course. Students often mistakenly believe simple transformations can disguise a copied program. In actuality, copied programs often reveal themselves quite easily during grading. We can also use sophisticated software such as MOSS to detect plagiarized code.
Page last updated: November 19, 2021