sep 6
preliminaries
Reminder on copyright & plaigarism - see resources page.
Questions about anything?
textbook
- (I) What AI is
- Structure of an "intelligent agent" program
- (II) Searching: breadth-first, depth-first, heuristics, ...
- More searching: genetic algorithm, hill climbing, beam, ...
- Adversarial search: alpha-beta pruning and games
- Constraint problems
- (III) Logical agents : propositional logic
- 1st order logic
- Inference
- Planning and State-Space search
- Planning in the Real world
- Knowledge Representation
- (IV) Uncertainty - Bayes' Theorem
- Probabilistic Reasoning and inference networks
- Time models : hidden markov
- Decision networks
- sequential decisions, auctions, iteration
- (V) Learning from example
- Knowledge in learning
- Probabilistic learning
- Reinforcment learning
- (IV) Perception etc: Natural Language Processing 101
- various NLP models
- Perception
- Robotics
- (VII) wrap up : philosopy
- future
discuss lisp
See the attached program. Walk through some of the syntax and basic ideas.
discuss chap 1 material
See resources page for some recent news on chatbots talking to each other.
discuss vacuum world of chapter 2
Run a bit of their lisp code from the (test 'all) output.
After dowloading and unpacking their aima.lisp code
from http://aima.cs.berkeley.edu/lisp/doc/overview.html
here's how it looks to follow their installation guide
with clisp.
# edit aimi.lisp's to set the directory path.
$ clisp -ansi -I
> (load "aima.lisp")
> (aima-load 'all)
; Several "continuable error" messages.
; Each time, type 'continue' without quotes.
> (aima-compile)
; Ditto.
> (test 'all) ; look at output to see how to run it.
> (saveinitmem "aima.mem") ; avoid this next time
> control-D ; exit
# next time
$ clisp -M aima.mem
> (run-environment (make-vacuum-world))
... and so on
The two top level vacuum world things are (run-environment ...) and (agent-trials ...).
The two sample agents are defined in agents/agents/vacuum.lisp.
Note that this file shows the glory and pain of lisp;
the (defstructure ...) format won't be found in any lisp manual,
because it's a macro defined by these particular authors,
based on common lisps (defstruct ...) object system, named
after C's structs.
A typical thing to do here is to write your own agent, following the pattern of theirs.