I feel that Python can be used for teaching regular AI topics. I would like to attempt teaching without using traditional LISP/Prolog. Nothing against them, but only to develop material for a Python based course. I would like to know if any of you already know material that would help me in shaping this course or develop examples. Any help will be appreciated. Nagarjuna
Hi All, At 08:04 PM 8/25/2002 +0530, Nagarjuna G. wrote:
I feel that Python can be used for teaching regular AI topics. I would like to attempt teaching without using traditional LISP/Prolog. Nothing against them, but only to develop material for a Python based course. I would like to know if any of you already know material that would help me in shaping this course or develop examples. Any help will be appreciated.
I am looking forward to the publication of the 2nd edition of Artificial Intelligence, A Modern Approach, later this year. At the book's website[1] are listed links to examples in Lisp, PYTHON, C++, Prolog, and Java. The Lisp and PYTHON examples are being provided by the authors, Stuart Russell, Professor of Computer Science at UC Berkeley, and Peter Norvig, Director of Search Quality, Google Inc. Enjoy, John [1] http://www.cs.berkeley.edu/~russell/aima.html
Hi again, I did a little surfing after my last post and found Stuart Russell and Peter Norvig's AI on the Web[1] page. It has about a dozen references to Python. Why am I so careful about how much effort my progams use to search and I just meander?? Enjoying the stroll, John [1] AI on the Web, http://www.cs.berkeley.edu/~russell/ai.html
Of course, it depends on what you mean by "AI". For traditional AI, John pointed to some good sites, especially those from Peter Norvig to supplement his textbook ("AI: A Modern Approach"): http://www.norvig.com/python/python.html If you are interested in the what you might want to call "Post-Modern AI" (including neural networks, evolutionary computation, and fuzzy logic) you can try out some code that we have been developing over the last year. (If anyone finds more AI-related Python code, please let us know. I'm planning to translate some Prolog-like logic resolution, forward and backward chaining code into Python from Scheme. If that has already been done, that'd be great.) Here is part of a message I sent to someone on this list just last week: We have three modules for fuzzy, neural networks, and genetic algorithms: pyro.brain.fuzzy pyro.brain.conx pyro.brain.ga You can find them individually at: http://bubo.brynmawr.edu/cgi-bin/viewcvs.cgi/pyro/brain/ or find our whole system at: http://emergent.brynmawr.edu/wiki/index.cgi/Pyro (Pyro is Python Robotics, and is a larger system for experimenting with robotic control using Python and a variety of AI techniques). The neural network is a fairly sophisticated back-propagation of error simulator. It does feed-forward networks (and simple recurrent networks). For more information on that style you can follow the "Parallel Distributed Processing" (or PDP) books by McClellend and Rumlehart. There is a Wiki page for conx documentation at: http://emergent.brynmawr.edu/wiki/index.cgi/PyroConx The Fuzzy logic is home grown, and handles the combination of Fuzzy values using the overloaded | and &. To turn a value into a Fuzzy value, the syntax looks something like: Fuzzy(min, max) >> value Fuzzy(min, max) << value The >> makes min = 0 and max = 1, whereas the << makes min = 1, and max = 0. We don't really have any good documentation on Fuzzy logic yet. But there are some examples in: http://bubo.brynmawr.edu/cgi-bin/viewcvs.cgi/pyro/plugins/brains/ (see the files that start with BB, which stands for "behavior based"). Our Genetic Algorithm is a simple system, but combined with the neural network module, you can even evolve the weights of a neural network. Find it at: http://bubo.brynmawr.edu/cgi-bin/viewcvs.cgi/pyro/brain/ga.py -Doug "Nagarjuna G." <nagarjun@hbcse.tifr.res.in> said:
I feel that Python can be used for teaching regular AI topics. I would like to attempt teaching without using traditional LISP/Prolog. Nothing against them, but only to develop material for a Python based course. I would like to know if any of you already know material that would help me in shaping this course or develop examples. Any help will be appreciated.
Nagarjuna
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
-- Douglas S. Blank, Assistant Professor dblank@brynmawr.edu, (610)526-6501 Bryn Mawr College, Computer Science Program 101 North Merion Ave, Park Science Building Bryn Mawr, PA 19010 dangermouse.brynmawr.edu
I feel that Python can be used for teaching regular AI topics. I would like to attempt teaching without using traditional LISP/Prolog. Nothing against them, but only to develop material for a Python based course. I would like to know if any of you already know material that would help me in shaping this course or develop examples. Any help will be appreciated.
Mark Lutz wrote an expert system shell in Python named "Holmes". I don't recall where it was published; maybe he used it as an example in Programming Python (1st ed.). Try a Googe search for "expert system Python". --Guido van Rossum (home page: http://www.python.org/~guido/)
Mark Lutz wrote an expert system shell in Python named "Holmes". I don't recall where it was published; maybe he used it as an example in Programming Python (1st ed.). Try a Googe search for "expert system Python".
I found the file (holmes.tar.gz) at: ftp://ftp.python.org/pub/python/contrib-09-Dec-1999/Misc/ Here are some other links that may be worthwhile: http://www.strout.net/python/ai/ http://www.python.eu.org/software/clips/python-clips.html -- Patrick K. O'Brien Orbtech ----------------------------------------------- "Your source for Python programming expertise." ----------------------------------------------- Web: http://www.orbtech.com/web/pobrien/ Blog: http://www.orbtech.com/blog/pobrien/ Wiki: http://www.orbtech.com/wiki/PatrickOBrien -----------------------------------------------
On Sun, Aug 25, 2002 at 04:55:52PM -0500, Patrick K. O'Brien wrote:
Mark Lutz wrote an expert system shell in Python named "Holmes". I don't recall where it was published; maybe he used it as an example in Programming Python (1st ed.). Try a Googe search for "expert system Python".
I found the file (holmes.tar.gz) at:
ftp://ftp.python.org/pub/python/contrib-09-Dec-1999/Misc/
Here are some other links that may be worthwhile:
It is a delight to see this morning so much on the thread. I am thankful to all those who responded to the query. I have so much material now, I will take some time to digest this material. I have Mark Lutz's book (Programming Python 2nd Ed), fortunately, on my table, so looked at it immediately. Evidently I did not cover all the ground I have before I asked help. Sorry for bothering you. But this gave me confidence that next year I can actually offer this as a course after working with the existing material. I am presently involved in a project to develop a Zope based application for semantic web mostly using the structure of topic maps specification called GNOWSYS, (http://www.zope.org/Members/nagarjuna/GNOWSYS/) which is still in a development stage. I wish to develop this tool with AI enabled features, particularly as an expert system. I expect to release the first stable version by December 2002. Thanks again Nagarjuna
participants (5)
-
Douglas S. Blank -
Guido van Rossum -
John Harvey -
Nagarjuna G. -
Patrick K. O'Brien