Course Information

Location: ISAT/CS: 246
Meeting Time: MWF 9:05-9:55AM
Prerequisites: CS240
Course Web Page: http://w3.cs.jmu.edu/spragunr/CS444/
Required Textbook: Artificial Intelligence: Foundations of Computational Agents, 2nd Edition, David Poole and Alan Mackworth, Cambridge University Press, 2017.
(A free HTML version of this book is available at http://artint.info/2e/html/ArtInt2e.html.)

Instructor Information

Name: Dr. Nathan Sprague
Office: ISAT/CS 226
Office Phone: 568-3312
Email: spragunr@jmu.edu
Office Hours: http://w3.cs.jmu.edu/spragunr/schedule.html

Questions related to course content should be asked through Piazza. You may use email if you need to contact me directly. Please don't contact me through the Canvas messaging system.

You are welcome to call or stop by my office any time, with the understanding that I may or may not be available outside of my posted office hours.

Course Description

Computing has fundamentally changed the human experience by allowing us to automate a wide range of routine tasks. The goal of artificial intelligence is to push back the boundaries of what qualifies as "routine". Tasks that once required human judgment are steadily being handed over to computers: driving cars, making complex financial decisions and winning game shows among many others. In this course we will investigate how those problems are being solved, and consider the current limitations of artificial intelligence.

This is a programming-intensive course that involves implementing and applying key AI algorithms. We will explore techniques from a wide range of disciplines including logic, probability theory, statistics and control theory.

The emphasis of this course is on technical content, but we will also explore important ethical and philosophical questions raised by AI: Is it possible for machines to be truly intelligent? Who should take responsibility for decisions made by computers? What will be left for people to do when every task is "routine"?

Catalog Description

Students will study the history, premises, goals, social impact and philosophical implications of artificial intelligence. Students will study heuristic algorithms for large state spaces and learn to develop recursive and non-deterministic algorithms.

Course Goals

At the conclusion of this course students should:

Course Content and Preliminary Schedule

A detailed schedule, including reading and homework assignments, is available on the course web page. That schedule will be updated throughout the semester and should be checked regularly.

Methods of Evaluation

Course grades will be based on two midterms and a final exam, in-class activities, homework assignments, projects, and occasional quizzes. Projects will include 4-5 programming assignments and a poster presentation. Assignment specifications and due dates will be posted to the course schedule page. The final grade will be computed as follows:

In-Class Activities and Quizzes 20%
Projects and Homework Assignments 20%
Midterm 1 15%
Midterm 2 15%
Final Exam 30%

Letter grades will be assigned on the scale A=90-100, B=80-89, C=70-79, D=60-69, F=0-59, with potential minor adjustments after considering the overall performance of the class and actual distribution of numeric scores. I will use "+" and "-" grades at my discretion. I do not assign WP or WF grades except under extraordinary circumstances.

Course Policies

Attendance and Participation

Regular attendance and fully engaged participation is expected. Your grade will be partially based on in-class assignments and quizzes, so attendance will affect your grade.

Academic Integrity

It is expected that your work in this course will comply with the provisions of the JMU honor code: http://www.jmu.edu/honor/code.shtml. It is not a violation of the honor code to discuss assignments with other students. However, all individual work that you submit must be written by you, based on your own understanding of the material. Representing someone else's work as your own, in any form, constitutes an honor code violation. It is also a violation of the honor code to "render unauthorized assistance to another student by knowingly permitting him or her to see or copy all or a portion of an examination or any work to be submitted for academic credit."

A key component of academic integrity is giving credit where credit is due. If you receive assistance, either from another student or from some other source, you must explicitly acknowledge that fact in your submission.

I will prosecute honor code violations if they come to my attention. If in doubt about what is allowed, ask me.

Missed and Late Assignment Policy

If you are unable to take an exam at the scheduled time because of illness or other problems, you must contact me beforehand to arrange to take the exam at a different time. Failure to make prior arrangements for a missed exam will result in a grade of 0 for the exam.

It will not be possible to receive credit for in-class work that is missed due to absence. In recognition of the fact that absences are occasionally unavoidable, I will drop the two lowest scores in this category when calculating your final grade.

Homework and Programming assignments will be due at 11:00PM on the posted due-date. Assignments submitted after the deadline will be subject to a 20% penalty for the first day. The penalty will increase by 20% every 24 hours. No assignments will be accepted more than 72 hours after the deadline.

Unless there are extraordinary circumstances, I will not provide extensions for illnesses or other personal difficulties. Instead, you will have three "late days" which may be applied to any project or homework assignment (with some exceptions for assignments due at the end of the semester or immediately before exams). The use of a late day allows you to extend the deadline for an assignment by 24 hours. You may apply all three days to a single assignment or distribute them across multiple assignments. Late days may not be used to submit assignments more than 72 hours late.

Adding/Dropping

Students are responsible for adding and dropping courses via MyMadison. Please consult the registrar's page of dates and deadlines for exact deadlines.

Disability Accommodations

If you need an accommodation based on the impact of a disability, you should contact the Office of Disability Services (Student Success Center, Room 1202, www.jmu.edu/ods, 540-568-6705) if you have not previously done so. Disability Services will provide you with an Access Plan Letter that will verify your need for services and make recommendations for accommodations to be used in the classroom. Once you have presented me with this letter, you and I will sit down and review the course requirements, your disability characteristics, and your requested accommodations to develop an individualized plan, appropriate for this course.

Inclement Weather Policy

This class will operate in accord with JMU's inclement weather policy available at http://www.jmu.edu/JMUpolicy/1309.shtml

Religious Observation Accommodations

I will give reasonable accommodations to students requesting them on grounds of religious observation. If you require such accommodations you must notify me at least two weeks in advance.