Professor Harry Wechsler

Department of Computer Science

George Mason University

Fairfax, VA 22030
 
 

e-mail : wechsler@cs.gmu.edu

www: http://cs.gmu.edu/~wechsler/

(703)993-1533 (office)

(703)993-1530 (sec)

(703)993-1710 (fax)
 

GEORGE MASON UNIVERSITY

____________________________________________

SPRING  2005

Artificial  Intelligence

001  11392   M  4:30 p.m. -  7:10  p.m.  ST2   9

Office Hours

M   3:15 -  4:00 PM   or by appointment (SITE II - Rm. 461)

Teaching Assistant

Shen - Shynag Ho, Tu  2 – 4 pm and Th 3 – 5 pm, rm. 365 [ST2] – sho@gmu.edu

Textbook

Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig,
2
nd edition, Prentice Hall, 2003.

Web site: http://aima.cs.berkeley.edu/

http://aima.eecs.berkeley.edu/slides-pdf/

Reference - Johnson Center Library -  Reserve Desk

Artificial Intelligence (4th Edition) by  George Luger,  Addison Wesley, 2002

Course Description

The course is about the automation and learning of intelligent behavior. We cover basic principles and methods for intelligent search and problem solving, game playing, and constraint satisfaction problems (CSP),  knowledge representation, predicate calculus / first-order logic and automatic reasoning (resolution with refutation), reasoning with uncertainty and belief (Bayesian) networks, (symbolic, connectionist and evolutionary) learning, and natural language processing [communication].  LISP, PROLOG, and MATLAB are the AI programming languages of choice used to implement the methods learned during the course. The approach used throughout the course is to address specific intelligence tasks, motivate how to solve them, describe algorithmic solutions, and undertake comparative performance evaluation.

Programming Languages

Here are some links for LISP, PROLOG and MATLAB :

1. Getting Lisp

On osf1, there's a Lisp system called LispWorks.  If you don't like telnetting in and running Lisp :-) there are several freeware packages you can try. Several Major Lisp firms offer free ANSI-standard CLTL2 common Lisp systems:

  • Franz Common Lisp for Windows, Linux, and FreeBSD. Be certain that you are using the case-insensitive version!
  • Macintosh Common Lisp by Digitool. A really nice package, but I don't think it runs on MacOS X yet.
  • CLISP is a good Common Lisp. It's close enough to full CLTL2 compatibility for our purposes. However, it has no graphical interface; but you can use it as a subprocess in (X)Emacs.
  • CMUCL is a first-rate Common Lisp, the fastest open-source implementation available, but it is not available on all platforms.  

You should be aware that there are two other variants of Lisp out there which are NOT Common Lisp. Those variants are Scheme and Emacs Lisp.

2. Getting Prolog

SWI-Prolog
http://aima.cs.berkeley.edu/ai.html#prolog

3. Getting MATLAB

MATLAB primer available at:

http://www.math.utah.edu/lab/ms/matlab/matlab.html

access to MATLAB from both CS and IT&E

for further information use 'help' and 'demo'

Grading

1. Homework à 20 % {HW#1 – CSP – due date March 7; HW#2 – FOL – due date March 21}

2. Projects à 40 %

You have to submit Project #1 and one of Projects #2 or #3 (described below after the tentative schedule for the class). You have to use at least one of the AI programming languages on the projects you choose.

Project #1 à due on or before March 28  à  20 %

Project #2 à due on or before April 18 à 20 %

Project #3 à due on or before April 29 à 20 %

2. EXAM#1: March 21 à 20 % 

3. EXAM#2: May 16 à 20 % 

Tentative Schedule
 

January 24

Chs.1 and 2: = AI.  

History and Applications.  Is the Brain a Digital Computer by J. R. Searl: http://cogsci.soton.ac.uk/~harnad/Papers/Py104/searle.comp.html

 

January 31 - February 14

Ch. 3 -  6: = Search and Problem-Solving. 

Strategies for State Space Search (minmax and alpha-beta pruning), Informed and Heuristic Search Methods, Game Playing, Constraint Satisfaction Problems (CSP), Evolutionary Computation and Genetic Algorithms.

applications: game design

LISP: (reference: Luger / Ch. 15)

February 21 -  March 21

Chs. 7 -  9 :=  Logic and Reasoning.  Propositional Logic, First Order Logic and Predicate Calculus, Reasoning and Inference; Resolution (with refutation) (mechanical) Theorem Proving.

 

REVIEW for EXAM 1

 

PROLOG: (reference: Luger / Ch. 14)

 

March 14

Spring Break

March 21

EXAM#1 - CLOSED BOOKS and CLOSED NOTES

Please bring the blue examination book!

 

Covers January 24 -  March 7  lectures.

March 28 -  April 4

Ch. 9:= Q & A (question & answering), General Problem Solver (GPS)

Ch. 11:= Planning: Representation, Constraints and Reasoning, and Search

Ch. 10:= Knowledge Representation: Knowledge Bases & Experts Systems, Data Abstraction, Semantic Networks, Frames, and Conceptual Dependencies, and Ontologies /see SEMANTIC  WEB : http://www.w3.org/2001/sw/ 

 

applications: expert systems

April 4 – April 11

Chs. 18 & 20:= (Machine) Learning.

Symbolic Based: Induction (The Problem of Induction at http://dieoff.org/page126.htm) Decision Trees (DT); Connectionist  Based:  Perceptron; Multi-Layer Networks & BackPropagation (BP);  k-means clustering; Performance Evaluation.

 

applications : data mining and knowledge discovery

 

MATLAB (reference: MATLAB primer)

 

April 11 - April 18

Chs. 13 - 14: = Uncertainty  Bayesian Nets. /download

notes http://www.cs.ubc.ca/~murphyk/Bayes/bnintro.html

 

applications: decision-making systems

April 25 – May 2

Ch. 22 := Communication Natural Language Processing; [please consult LUGER reference Sects. 13.0 – 13. 3 and 13.5]. Ch. 24:= Perception

 

applications : augmented cognition, HCI, and biometrics

May  2

Chs. 26 - 27:= Conclusions; REVIEW for EXAM#2

May 16

EXAM #2 – FINAL

-- covers March 28 – April 25 lectures -

 

Please bring the blue examination book!

Please bring scientific calculator with logarithmic function

 

 

Project  # 1 - due on or before March 28:   Search and Problem Solving / Game Playing / CHECKERS or another game of your choice/ Use programming language of your choice/

Game Rules: distributed in class.

Use intelligent search and implement a user interface to play the game.

Schedule time to have your program play against the Instructor or TA &

Submit Short Report that includes (i) task and approach; (ii) representation, data structures, and GUI; (iii) game strategy (look-ahead, minmax, alpha-beta) and evaluation function; (iv) information on software tools used and hardware platform; and (v) performance evaluation and conclusions.

 

Project  # 2 - due on or before  April 18 : Knowledge Representation and Reasoning

Programming 1:  Missionaries and Cannibals / Use LISP or PROLOG or  both for extra 10 % credit /

Three missionaries and three cannibals are on one side of the river,
along with a boat that can hold one or two people. Find a way to get
everyone to the other side, without ever leaving a group of missionaries
in one place outnumbered by the cannibals in that place. Try using CSP
strategies.

OR

Programming 2:  your choice of problem / Use LISP or PROLOG or both for extra 10 % credit /

 

Project  # 3 - due on or before  May 2 :  Learning

Programming 1: Classification / Use MATLAB /

Access UCI repository at www.ics.uci.edu/~mlearn/MLRepository.html  and choose
some classification problem and the corresponding data sets.
 Solve and implement the classification task using DT (Decision Trees). Discuss your results.  For extra credit  (10 %) solve and implement the same classification task using BackPropagation (BP) and make a comparison against the results obtained using DT.