Topics | Material | Slides | |
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 |