Department of Computer Science
Pomona College
CS 051A PO—Intro to Computer Science with Topics in AI
Spring 2022
Lecture Instructors
Dave Kauchak
e-mail: David.last_name@pomona.edu
office hours: Edmunds 224
M-Th 2:30-3:30pm via Zoom
Alexandra Papoutsaki
e-mail: Alexandra.last_name@pomona.edu
office hours: Edmunds 222
TRF 2-4pm (in person and Zoom)
Lab Instructors
Zilong Ye
e-mail: Zilong.last_name@pomona.edu
office hours: T 12:30pm-2pm (Zoom)
Final Exam Mentor Session
Sunday 12-2pm (Sarah) via Zoom
Class Information
Class time: MW 11am-12:15pm (Section 1) and MW 1:15-2:30pm (Section 2)
Class location: Edmunds 114 (Section 1) and Seaver Commons 102 (Section 2)
Lab time: M 7-9:50pm (Sections 1 and 2) and T 7-9:50pm (Sections 3 and 4)
Lab location: Edmunds 219 and 229
Lab TAs: Edmunds 229
Assignment submission: Section 1 and Section 2
Web page: http://www.cs.pomona.edu/classes/cs51a/
Textbook: How to Think Like a Computer Scientist: Interactive Edition. Brad Miller and David Ranum, based on original work by Jeffrey Elkner, Allen B. Downey, and Chris Meyers. It is available online for free.
Final exam: Monday, May 9, 9am-12pm (Section 1) and Thursday, May 12 2-5pm (Section 2)
Other information:
Schedule
Note: This is a tentative schedule and will likely change
Date | Topic | Reading | Assignment | Misc |
1/19 | introduction (notes) | Ch 1-2 | | |
1/24 | functions (notes) | Ch 1-2 |
Assignment 1 | Lab 1 |
1/26 | turtle, for loops (notes) | Ch 4, 5 | | practice 1 (solutions) |
1/31 | booleans, random | Ch 7-8 |
Assignment 2 |
practice 2 (solutions)
|
2/2 | while loops | Ch 8 | |
practice 3 (solutions) |
2/7 | sequences (notes) | Ch 9-10 |
Assignment 3 |
practice 4 (solutions) |
2/9 | boolean variables, aliasing, parameter passing (notes) |
Ch 6 |
| |
2/14 | scoping and debugging (notes) |
Appendix (Debugging) |
Assignment 4 |
practice 5 (solutions) |
2/16 | reading files (notes) | Ch 11 | |
|
2/21 | dictionaries, recursion (notes) | Ch 16 | Assignment 5 |
practice 6 (solutions)
|
2/23 | more recursion (notes) | | |
practice 7 (solutions)
practice 8 (solutions)
|
2/28 | Midterm 1 | |
Assignment 6 |
sample problems (partial solutions)
|
3/2 | intro AI/NN Basics | | article (through first column, pg. 36) | |
3/7 | preceptron learning, backpropogation | | NN Lab | |
3/9 | machine learning/naïve bayes | | | |
3/14 | break | | | |
3/16 | break | | | |
3/21 | ethics presentations | | Assignment 7 | |
3/23 | classes | | | |
3/28 | more classes | | Assignment 8 | |
3/30 | search (ppt) | | | |
4/4 | matrices, problem solving via search (ppt) | | Assignment 9 | |
4/6 | informed search (ppt) | | | |
4/11 | informed 2 (ppt), adversarial search (ppt) | | Assignment 10 | |
4/13 | adversarial search 2 (ppt) | | | |
4/18 | Midterm 2 | | Assignment 11 | sample problems (solutions) |
4/20 | web pages | | | |
4/25 | exceptions and sets | | Assignment 12 | |
4/27 | higher order functions | | | |
5/2 | big O | | | |
5/4 | philosophy (ppt) | | | final sample problems (solutions) |