Course Organization

Class Time and Place

Our class meets on Tuesdays and Thursdays from 8:10 – 9:25 am in “Jacobs Believed in Me Auditorium” (FGH 134). I record my lectures on Zoom and post the recordings to the Schedule. Moreover, you can attend by Zoom if you are on travel or sick in bed or in any case (Join URL: https://zoom.us/j/581915286 Use this link only during class meeting time).

In case of emergency evacuation, we go to the area at the nexus of Featheringill, Stevenson, Zerfoss Student Health, and the Student Wellness Center: https://engineering.vanderbilt.edu/docs/vuse-pdfs/jh_fgh_firstfloor_evacplan.pdf

Office Hours

Doug’s office hours are immediately after class on Tuesdays and Thursdays in the FGH atrium, and last as long as students are waiting to talk. The TAs are Katherine Brady (katherine.a.brady@vanderbilt.edu) and Xingyu Zhou (xingyu.zhou@vanderbilt.edu). Katherine’s office hours are 9:00 am – 11:00 am on Wednesdays in FGH 385, and Xingyu’s office hours are 2:00 pm – 4:00 pm on Wednesdays in FGH 385.

Textbooks

Our required course textbook will be the 2nd edition of “Artificial Intelligence: Foundations of Computational Agents” by David Poole and Alan Mackworth (Cambridge University Press). You can buy hardcopy (order independently), and/or use a freely-available online version at http://artint.info/2e/html/ArtInt2e.html. If you use the online version, you can use it in conjunction with a Web-based annotation tool. I have created a group account named “CSx260Fall2018″ on the hypothes.is platform  https://hypothes.is/groups/KPyKwkbE/csx260fall2018. If you choose to use this tool, you can use it so that only you can see the annotations that you leave, or so that others in the group can see it too.

Lectures

There are two types of lectures — “Nuts and Bolts” lectures that describe and illustrate the details of algorithms and knowledge representations. Nuts-and-bolts are almost always better on video. I will post pre-recordings of my nuts-and-bolts lectures well before they must be viewed. In most cases I will expect you to have watched the week’s nuts-and-bolts lectures  before each Tuesday class (see “Weekly Structure”).

Reflective, expansive, and interactive lectures  are almost always better in person (certainly the interactive component). So we will use class time for these more interactive lectures that address issues like current applications of the week’s technologies, how the week’s technology fits within larger intelligence paradigms as described in the Overview, ethical implications of the technology, and sometimes delving deeper into algorithmic details.

My goal though is the time requirement for combination of these two types of lecture, per week, is 2*75 minutes, or 2.5 hours.

Weekly Structure

Video (nuts and bolts) lectures, and some associated readings (required and optional), for a week are assigned to be done before the Tuesday class meeting (see Schedule).  Live class sessions on both Tuesdays and Thursdays will be more expansive on some days, and more detailed on others, as noted above.

In a typical week, you will

  • work through material before Tuesday class;
  • complete (before Tuesday class) an auto-graded quiz on Brightspace that covers that week’s material;
  • complete and submit, by Tuesday 11:59 pm, a 100 – 150 word discussion forum post on the AI material for that week, ideally (for possibility of full credit) with a reference to a relevant paper, article, or Web page.
  • complete and submit, by Saturday night, an exercise set on that week’s material, to include the week’s lectures

The exceptions to this weekly structure will be during weeks that in-class exams are given, and to compensate you time for programming assignments that will start about week 3. 

See Grading for the weighting given to each of the following, as well as the weight given to attendance, which will be tracked by Top Hat, a cloud-based clicker platform (so bring your laptops to class, or have them handy if listening by Zoom).

Exams

There are two exams during the regular semester, and a final exam during the final exam period. See the Schedule.

Quizzes

You will have an online quiz before each class on Tuesday. Each quiz covers material from readings and videos that you are responsible for ahead of Tuesday class. Quizzes are typically timed and may be auto-submitted and auto-graded on Brightspace.

Exercises

Exercises are due after each Thursday class (by Saturday at 11:59 pm), on material that was covered in the week’s lectures and readings. Exercises are submitted on Brightspace, and are sometimes submitted like quizzes. The differences between exercises and quizzes are that (a) you will be given exercise questions well before they are due, whereas quiz questions are not given until you start the quiz; (b) exercises require more work than quizzes; and (c) exercises may cover live sessions, as well as pre-Tuesday material.

Discussion Forum Posts

Weekly, you will submit (by Tuesday 11:59 pm) a post on that week’s material, which points to an actual or proposed application of that week’s material, or some other commentary (e.g., ethical implications of the technology). This will probably occur on Brightspace (TBD).

Programming Assignments

There will be three (perhaps four) programming assignments, which will start in week 3 of the course. We are deciding on programming languages now. The final programming assignment will be more involved, and you might hear me refer to it as a programming project. Each programming assignment will require a write up on experiments with the code and on possible extensions, as well as thorough commenting.

Workload

Vanderbilt has no stated guideline (that I can find) on the amount you work per credit hour, but other universities state an expectation of an average of 3 hours per credit hour per week. This passes my sanity check (a 20 credit hour semester would have you working 60 hours per week on classes if every class were exactly at “expectation”, and a 15 credit hour semester would have you working about 45 hours per week on classes). For a 3 credit course like CS x260, that is approximately 9 hours of work per week, including class time (or 6.5 hours outside of class per week), for a B grade.

You will see my time estimates for various activities on the Schedule, which I’ve used for designing the syllabus. My estimates assume that you work uniformly on class responsibilities (e.g., minimal procrastination on a project deadline), so they may not be a good estimate of how you manage the time (i.e., distribute the load), but I still expect them to be a good estimate of the average load.

Roughly, I expect that each week’s workload will be distributed as follows:

  • 2.5 hours in class and watching pre-recorded lectures
  • 2 hours of additional reading and studying (e.g., prior to class)
  • 1.5 hours doing exercise and quiz
  • 3 hours programming and/or researching and writing discussion forum

Again, my time estimates assume a B grade — the expected time for an A grade will probably be greater for some of you, particularly on the Project.

Graduate Credit

If you are taking the course for graduate credit (CS 5260) then you are required to do one more programming assignment and/or short paper. Details are forthcoming.

Details: The assignment for graduate credit will be to write a summary of a research paper of interest to you.