CMPS 140 - Artificial Intelligence

Latest
FINAL PROJECTS- as discussed - Projects will be completed by June 9th and reports of 4000 words turned in on that day, on paper.
- Projects have a presentation component. Students can give a 15 minute class presentation to everyone using board/projector (using own laptop) on June 2nd and 4th
- or the students can make a 5 minute presentation in Lab on June 10 on lab computers
- or by poster presentation on June 10 - students who cannot meet those times should see the instructor Ira Pohl to arrange for an individual presentation.
/afs/cats.ucsc.edu/users/a/foaad/public_html/public/140-hw2.fasl .
May 5: 20 agents participated in the practice tournament. Congratulations to agents Zelikovsky and Dunn for finishing consistently 1 and 2 during most runs of (m) and (m2). The practice agents are compiled as "practice.fasl" in my public directory. This file is compiled for Solaris/X86 and thus is not guaranteed to work on any other platform. I would just use it on unix.ic. This file contains a list of agents in symbol practiceAgents which can be combined with the agentlist. To use them you have to:
- load them into sbcl. You can add another load line to your local agent file right after you load the Monitor, like this (load "/afs/cats.ucsc.edu/users/a/foaad/public_html/public/practice.fasl")
- append the agentlist to reflect the new practice agents like this: (setf agentlist (append agentlist practiceAgents))
- Name Collision Problem: if you already have a practice agent with your last name, that name will collide with your current agent. To avoid this rename your current agentby adding a number (like 2) after it, so Khosmood would become Khosmood2 but remember to change it back before submitting. Agent requirements will be strictly enforced in the real tournament.
April 24: We will run a practice tournament in class on May 5. Email foaad your agents by midnight the night before (Monday, May4). Follow directions just like in the assignment. Your code won't be shared with anyone and no points will be awarded, but you will get an idea of how your agent is doing in comparison to others.
April 22: Read and use this local agent file for your own development. It automatically loads the latest Monitor and adds your agent to the list of competitors. An auto reloader function (ll) saves a lot of typing when in the interpreter. Don't forget to change "MyLastName" to your own last name (three places inside the file and the file name itself).
April 22: New agent (ZenMaster) was added to sample agents
April 22: Results from the April 21 tournament with class groups: Group 3 (closest to Windows) did really well in both monitor settings (m) and (m2). I also ran the tournament just with the three groups (no sample agents). See the results
April 7: New background reading material for Homework 1 now in the reading section.
Class Material
- Course Syllabus [pdf]
- Assignments
- Homework 1: Pohl-Warnsdorf rule for Knight's Tour [pdf] due April 21, before class
- Homework 2: Lisp / IPD Assignment due Monday May 11 at Midnight
- You also need the latest monitor and sample agents - April 16th (please check back for updates)
- Project: due the last week of class along with presentations. [pdf]
- Grading
- Reading
- Tools and Software
General Class Information
- Instructor:
- Name: Professor Ira Pohl (EMAIL)
- Phone: 831-459-3648
- Office: E2-349A
- Instructor Office Hours:
- Tuesday 1-2
- Teaching Assistant(s):
- Name: Foaad Khosmood (EMAIL use "[140]" in subject line)
- Office hours: same as lab times above, held in BE 109
Grading

- Term Project: 50%
- Midterm: 25%
- Homeworks : 20%
- Class presentation and participation: 5%
Reading

- Required Textbook: Artificial Intelligence: A Modern Approach, 2nd Edition, by Stuart Russell and Peter Norvig.
- Pohl-Warnsdorf
- "A Method for Finding Hamilton Paths and Knight's Tours", paper by Ira Pohl in Communications of the ACM. July, 1967. [pdf]
- "Hamiltonian(t) - An Ant-Inspired Heuristic for Recognizing Hamiltonian Graphs", Wagner and Bruckstein, CEC '99. [pdf]
- "Pohl-Warnsdorf Revisited", Ira Pohl and Larry Stockmeyer, 2004. [pdf]
- Lisp
- CommonLisp entry on Wikipedia
- A Lisp primer for Java Programmers [pdf]
- (The Bible:) Common Lisp the Language, 2nd edition, by Guy L. Steele, Thinking Machines, Inc. [Available Online]
- An Introduction and Tutorial for Common Lisp [link]
- Steel Bank Common Lisp (sbcl) website and manual (we will be using this on unix.ic.ucsc.edu)
- Prisoner's Dilemma
- Wikipedia entry
- CMPS 140- 2006 version of rules and requirements (Ours will be very similar and we will not be writing the monitor for the class assignment)
Tools / Software
- Steel Bank Common Lisp download (Linux/Solaris and Darwin but no stable Windows version)
- GNU Common Lisp (GCL) download (Windows binary available for version 2.6.7)
- Crimson Editor: a good light-weight text editor for Windows (name your files with .lisp extension and it handles paren. matching and keyword highlighting).
- vi help: on the vi installation on unix.ic.ucsc.edu, lisp is already recognized with syntax highlighting and parenthesis matching provided you name your files with .lisp extension, for other vi systems, you can use this in your .exrc file to turn on these features.

