About the Course/Instructor

CSC 261 - Artificial Intelligence - Weinman

1  About the Course

Q
What happens if we are making a transcript of the program, run into an error, then fix that error? Do we need to create a new transcript, since we have a new program, and if we do, do we include both transcripts? If we include both transcripts, how do we differentiate between the transcripts produced by different versions of the code?
A
You need only submit the one transcript reflecting the program actually submitted.
Q
Can we discuss the readings with peers before we write in our reading journal? What about after we submit the journal, but before it is returned to us?
A
Yes and yes. I strongly encourage it!
Q
Will there be any refreshers on scheme or C?
A
Just the first lab. See the syllabus for optional Scheme references/readings.
Q
Please let me know if this is wrong, but I can discuss the same things I would discuss on Piazza in person with classmates?
A
Yes. Of course, the benefit of Piazza is that information gets shared more broadly.
Q
On the syllabus, in section 7 (Grading) you have a table of grade points and grades. I m curious about the Average at least section. Does that mean if we get an A, we might only get a 3.75 for the class?
A
No, it's the reverse. If you get at least a 3.75, you will receive an A (I can give only discrete marks.) The college translates this to a 4.00.
Q
Additionally, you say the brackets may be adjusted downward...can we get lower than a 3.75 for an A (3.5 for an A-, etc.).
A
That is correct. Assessment can be an inexact science and I try to provide for that by not being excessively rigid in these categories.
Q
Also, is there a way to earn extra credit in this class?
A
Yes, some lab exercises may have extra credit components that will allow the score on those assessments to rise above 4.00.
Q
Is this class more of a theory- or application-based class? i.e. will there be lots of proofs?
A
There will not be a lot of proofs. We'll study how to implement a rational system computationalizing proof, but there will be little in the way of proof for you to write. However, there will be plenty of empirical reporting and analysis. In that sense, it's application, but we'll talk a little bit about some formal analyses to backstop ourselves with theory on occasion.
Q
Will exams mostly cover conceptual understanding or the ability to implement (coding questions)?
A
Exam questions are mostly applied and conceptual. You won't be writing actual code, but you may be asked to diagnose/investigate/reason about pseudocode similar to that in the textbook
Q
What is the rationale behind assignments that will be done in Scheme vs those done in C?
A
We will implement algorithms in Scheme when they are naturally expressed recursively and functionally (and one case when they're not, but just because it saves headaches with C). We'll implement a few algorithms in C when they are naturally stateful and require mutation.
Q
We do not have any lab write-ups this semester because we have lab assignment every week?
A
There are not lab write-ups as in CSC 151 or CSC 161, because this is not a workshop-style lab course. The weekly assignment and reading journals will keep you engaged with the material on a regular basis.
Q
The academic policy section states, All non-syntax consultations (including the textbook and language references) require formal citation, what type of formal citation is required?
Q
What format do we need to use when making a citation?
A
Rather than specifying a particular format, it means you need to give a reference. Any such reference should include the author and title of the work, as well as enough other information to find the original (i.e., a URL).
Q
When writing code (Scheme or C) what format do you prefer (e.g. GNU formatting for C)?
A
I'm not going to be picky about C formatting, just so long as you're consistent and it's not ugly. I do prefer you use spaces instead of tabs (all the code provided should hopefully do that; let me know if you find otherwise). For legibility, I personaly prefer square brackets around names in lets and cond test/consequent pairs in Scheme (it helps to distinguish structural parens from function calls), but I won't penalize you if you don't use them. Just be consistent.
Q
I ve heard that you do not like code to exceed a certain amount of characters per line; would you mind clarifying what you would like exactly?
A
See Grading, Section 2.2, Format programs for ease of reading and understanding.
Q
What will happen if I have another class that causes a conflict with the final exam?
A
I believe the final exams are scheduled around when the class actually meets, so that should not happen. If it does, we will determine how best to proceed.
Q
Are we allowed to use our own machines in class for work on labs?
A
You can use it during the lab, but the in-class warm-up labs will be collaborative. Thus for the programming part you'll want to use the MathLAN machines. I ask you to bring a printout of the assignment primarily because there's a lot of material in them and I believe you'll generally find it easier to navigate via paper (and you can write on it easily). I could imagine you using a separate machine to keep a Scheme reference visible if you like.
Q
What is Pretty Big's best documentation source?
A
Oh, that is a *great* question. There are only a few slight things that pretty big does which R5R6 doesn't, and R6RS (if I recall) sometimes was incompatible with the starter code. However, I'd love the code I provide to simply work in the straight-up racket language. I just haven't tested it. If you find any incompatibility and would like to send me a patch, I would gladly welcome it.
In any case, you can read tspl for all things Scheme.
Q
Can we write formalized tests for our program and have that be an acceptable way of handling the transcript?
A
Heavens yes. I would love everyone to use formal unit tests. (But I still want to see them run in the transcript.)
Q
May we discuss assignments with other students after all copies have been turned in?
A
Yes. In general you'll probably need to wait until the PWeb drop box closes (three days after the deadline at 11:59) to guarantee that the assignment can no longer be submitted for credit.
Q
For the grading of reading journal responses, is a minus equivalent to a 0 for the response, or are there some 'attempt' points involved?
A
Only late or no-attempt is likely to yield a zero. Minus is not a zero.
Q
Also, is there any direct translation between the plus/check/minus grade for the reading assignment and a letter grade, or is it less straight-forward than that when determining the reading response grade?
A
The rough translation is A+, A-, and C+.
Q
Is there a copy of the textbook in the CS lounge? I have a pdf of it I found online, but sometimes a hard copy is nice, but I don t want to pay the $200 for the textbook just to satisfy this.
A
While I can't necessarily condone intellectual property theft, I sympathize. As of this morning, the price for a new book on amazon is $102 (used from $85). There is not a copy of the third edition available in the CS Learning Center, but it is on reserve in the Science Library. That's part of a College-wide initiative to ensure that every course's textbook is available in a library.
Q
I remember in 161 you gave out rubrics for each assignment that they were then graded on, will you do the same for this class as well?
A
Not precisely. General Program Grading Guidelines are provided, and each assignment will generally identify the total contribution of problems in the grade for the lab. The various scores will be assigned based on the efficiency and correctness of the code, and clarity and completeness of the written analysis.
Q
Do we get I <3 AI shirts if we pass this course?
A
I wish. My shirt is booth swag from the Neural Information Processing Systems (NIPS) conference last year.

2  About the Instructor

Q
How do you choose the color schemes for your class pages?
A
I usually copy the color scheme of the course textbook cover or that of a closely related textbook. I think I used Paletton to help choose the 161 colors.
Q
I guess I'm interested in what are your reasons for teaching this course and/or interests in AI?
A
When I wrote my first program as a child, I was enthralled with the idea I could make the computer do what I wanted it to do. I suppose it's a little ironic that I'm now writing programs that do what they learn to do. I still love that behavioral aspect, and I'm curious with the general properties of sensible and efficient information processors (whether biological or not). I love teaching the course because I find the material fun and interesting and I appreciate getting to share it with students who also generally find it fun and interesting.
Q
What are some of your hobbies?
A
Lately it's mostly been reading. I read a lot on my sabbatical (though my selection of English language novels was a bit more sparse abroad), but I've slowed down to read some classics this year. I also enjoy cooking, especially barbecue (low and slow is the way to go) and a wide variety of international cuisines.
Q
Where are you from?
A
I grew up in western Nebraska, went to college in western Indiana, graduate school in western Massachusetts. Now I live on Elm Street in Grinnell (neither of which are western).
Q
What should I call you?
A
You may call me Jerod. (As I learned from Sam, if you address me as simply "Professor", I am likely to respond "Student.")
Q
What interests you the most about computer science?
A
Wow, that's a stupendously tough one. There's so many interesting things! Perhaps the fact that such a basic mechanism can be the foundation for so much powerful information processing.
Q
How worried should one be about normal deodorant with scent?
A
Thanks kindly for asking. You'll almost certainly be fine. (Things like "Axe" body spray are a bit more problematic.) Coming to my office straight out of the shower with wet, freshly shampooed hair problem probably isn't the best idea, but I'll probably be ok if you come to a 10 am class like that, given that the space is larger (maybe just don't sit right up front).