Materials used and code written for the 2020 winter school conducted on the book Paradigms of Artificial Intelligence Programming by Peter Norvig.
GPS is a computer program intended to work as a universal problem solver machine (exaggerated) . It's works with means-end-analysis
(We deliberate not about ends, but about means). Refer to Chapter 4 in the book provided for more info.
Here's a run of GPS for the school problem:
python gps.py school.json
> Do you want to output a stack trace?[y/n] n
Executing look up number
Executing telephone shop
Executing tell shop problem
Executing give shop money
Executing shop installs battery
Executing drive son to school
How-To use the Template:
- Refer to this file for understanding how to formulate a problem (if possible) for the GPS, and checkout this example for specifics.
Here's a link to the original GPS paper.
ELIZA is an early natural language processing computer program that uses pattern matching and substitution to give an illusion of understanding. Here is a run of eliza (on latest commit)
> (eliza '(hello eliza))
'(How do you do. Please state your problem)
> (eliza '(i want to go back to college))
'(Suppose you got to go back to college soon)
> (eliza '(i can go to jc if i get back to college))
'(Really-- if you get back to college)
> (eliza '(no not really))
'(Why not?)
> (eliza '(i was being sarcastic))
'(Why do you tell me you were being sarcastic now?)
> (eliza '(i feel bored))
'(Do you often feel bored ?)
> (eliza '(i felt bored yesterday))
'(What other feelings do you have?)
Here's a link to the original Eliza paper.
See test cases to get a feel of how various components of the program work. To run all tests, do
raco test tests.rkt