an introduction to computer science, artificial intelligence and programming
Union College
Winter 2008
TopicsMaterialSlides
Week 1
Assignments for week 1 - due on Thursday (1/10) and Tuesday (1/15)
Tue
Jan 8
What are intelligent machines?
Algorithms.
What is an algorithm?
Algorithm March
[Weizenbaum explains how ELIZA works]
week 1 slides
Tue
Jan 8
Algorithms.
The Python interpreter.
Some Python primitives.
Thu
Jan 10
discussion: How can we find out whether a computer thinks? The Turing Test?
Building algorithms from primitives.
Variables and assignments.
Alan Turing: Computing Machinery and Intelligence
Zelle Chapter 1, 2.1-2.5, 3.1, 3.2, 3.6, 4.1, 4.2
How to think like a computer scientist (HTCS), Ch. 2
Intro to IDLE
Week 2
Assignments for week 2 - due on Thursday (1/17) and Tuesday (1/22)
Tue
Jan 15
Functions. week 2 slides
Tue
Jan 15
Inside your computer.
Defining functions.
scope1.py, scope2.py, scope3.py, scope4.py, scope5.py
Zelle, Chapter 1.4, 1.5, Chapter 6
Thu
Jan 17
discussion: Can symbol manipulation lead to thinking?
if-statements.
John Searle: Minds, Brains, and Programs
Daniel Dennett: Can Computers Think?
Zelle, Chapter 7
Week 3
Assignments for week 3 - due on Thursday (1/24) and Tuesday (2/5)
Tue
Jan 22
while loops. Zelle Chapter 8. week 3 slides
Tue
Jan 22
Strings.
Zelle Chapter 3, 4.1, 4.2, 4.4.1
Thu
Jan 24
discussion: What is AI? Thinking machines?
More on strings.
Intro of the first programming project.
Russell & Norvig (2003). Chapter 1. (on Blackboard)
Nilsson (1998). Chapter 1. (on Blackboard)
myeliza.py
Week 4
Tue
Jan 29
Exam 1 Everything we did in the first three weeks.
Tue
Jan 29
Strings and pattern matching.
Commenting programs.
What to hand in for the ELIZA assignment
Python String methods
Python re module
Thu
Jan 31
Lists. Zelle, Chapters 2.6, 2.7, 11.1, 11.2
How to Think Like a (Python) Programmer, Chapter 10
slides: intro to lists and for-loops
Week 5
Tue
Feb 5
discussion: AI and ethics.
Lists: traversing lists.
Tue
Feb 5
Lists: more on traversing. List Exercises
Grand Challenge Links
Talk by Wendell Wallach (Yale University's Interdisciplinary Center for Bioethics) on Machine Morality; Tue, Feb 5, 5:30pm, Social Sciences 016
Assignments for week 5 - due on Thursday (2/14) and Tuesday (2/19)
Thu
Feb 7
Rational agents.
Simulating a stimulus-response agent in a grid-world in python.
wall_following.py
randomly_moving.py
Russell and Norvig, Chapter 2 (Blackboard)
slides: rational agents, a stimulus response agent
Week 6
Tue
Feb 12
Simulating a stimulus-response agent in a grid world in python.
Tue
Feb 12
Artificial Life.
Cellular automata - the game of life.
gol.py slides: artificial life
Thu
Feb 14
List methods; List searching slides: list searching and sorting
Week 7
Assignments for week 7 - due on Thursday (2/28)
Tue
Feb 19
Recursion.
Sorting lists.
binsearch.py
merge.py
Tue
Feb 19
Recursion
Sorting lists.
spiral.py
Reading: Zelle, Chapter 13
How to Think Like a (Python) Programmer, Chapter 5.8-5.10
slides: recursion
Thu
Feb 21
Debugging selection_sort_error.py
anagram_error.py
How to Think Like a Computer Scientist: Appendix on Debugging
Week 8
Tue
Feb 26
Exam 2
Tue
Feb 26
Files.
Dictionaries.
example_text.txt slides: files and dictionaries
Thu
Feb 28
Dictionaries. Tuples. text1.txt
text2.txt
text3.txt
Week 9
Assignments for week 9 - due on Tuesday (3/11)
Tue
Mar 4
Intro to Machine learning.
N-gram learning for natural language.
a paper introducing probability for linguistic applications
an introductory paper about machine learning
slides: n-grams
Tue
Mar 4
More n-gram learning. text_classification.py
development.zip
novels.zip
presidents.zip
Thu
Mar 6
Artificial Neural Networks.
Week 10
Tue
Mar 11
Artificial Neural Networks. bpnn.py - a simple module for back-propagation neural networks
bpnn_tester.py
digits.zip)This is a zip archive and needs to be decompressed.
handwritten_digits.py
slides: neural networks
Tue
Mar 11
Artificial Neural Networks. wall_following.py
training data for the wall following agent: wall_data.txt
Thu
Mar 13
Wrap-up.
Final Exam: Tuesday, March 18 11:30-1:30pm
© 2007 Kristina Striegnitz