GithubHelp home page GithubHelp logo

tiancheng-luo / paip-python Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dhconnelly/paip-python

0.0 0.0 0.0 455 KB

Peter Norvig's Paradigms of AI Programming implemented in Python

Home Page: http://dhconnelly.github.com/paip-python/

License: BSD 2-Clause "Simplified" License

Python 95.22% Common Lisp 4.02% Prolog 0.76%

paip-python's Introduction

paip-python

Python implementations of some of the classic AI programs from Peter Norvig's fantastic textbook "Paradigms of Artificial Intelligence Programming."

About

This is meant to be a learning resource for beginning AI programmers. Although PAIP is a fantastic book, it is no longer common for students to have a background in Lisp programming, as many universities have replaced Lisp with other languages in introductory programming and introductory artificial intelligence courses. It is my hope that making the programs from PAIP available in a commonly-taught language will provide a useful hands-on resource for beginning AI students.

The following programs are available, each with annotated source:

  • General Problem Solver, means-ends analysis problem solving
  • Eliza, a pattern-matching psychiatrist
  • Search, a collection of search algorithms
  • Logic, a library for logic programming
  • Prolog, a basic Prolog interpreter
  • Emycin, an expert system shell
  • Othello, some game-playing strategies for the Othello board game

Unit tests and some example applications are provided for each of these; see the paip/tests and paip/examples directories or the links from the annotated sources.

Getting Started

Get the source code from GitHub or just download the latest version.

Also make sure you have Python 2.7.

  • To run the examples: python run_examples.py and follow the prompts.
  • To run the Prolog interpreter: ./prolog.py. Pass the -h flag for more details on its use and capabilities.
  • To run the unit tests: python run_tests.py.
  • To build the documentation: python build_docs.py.

Contributing

  • fork on GitHub
  • write code in paip/
  • add unit tests in paip/tests
  • make sure all tests pass: python run_tests.py
  • send me a pull request

Author

These programs were written by Daniel Connelly at Georgia Tech as an independent project supervised by Professor Ashok Goel.

paip-python's People

Contributors

dhconnelly avatar mohitburkule avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.