views:

603

answers:

4

I was wondering if there are any python AI libraries similar to aima-python but for a more recent version of python... and how they are in comparison to aima-python.
I was particularly interested in search algorithms such as hill-climbing, simulated annealing, tabu search and genetic algorithms.

edit: made the question more clear.

+3  A: 

There are a bunch of Python AI libraries, including PyBrain, OpenCV, PyML, and PyEvolve. Here are a few useful guides, one and another on decision trees.

The Programming Collective Intelligence book is excellent and uses Python for all the examples.

John Paulett
i was looking for search algorithms in particular and none of those libraries had that. those where excelent links to AI libraries so i gave you +1 anyway :)
João Portela
Actually, PyBrain is pretty good at evolution strategies.
bayer
+1  A: 

You would be hard-pressed to find better written code than the aima-python stuff, and I've done a lot of comparison with other search algorithms. Why do you want more "recent" code? I've used a couple of the AIMA classes in a Python 2.6 project, including the search algorithms you're talking about. The only times that I've had to modify the code is where I wanted to use generators instead of lists, and that was a fairly trivial change.

Brandon Corfman
You make an interesting point, but i needed to find out if there was a better solution before choosing (and a more recently maintained would be a plus).
João Portela
Software rot is an issue only if a) the code in question stops working with language upgrades, or b) the code is deficient in some way. The AIMA search.py module doesn't have either problem.
Brandon Corfman
i guess i was being unnecessarily worried... and because of that i have changed my question and focused on figuring out the quality of the implementation and the alternatives
João Portela
selected your answer because you managed to convince me to stay with aima-pyhon. ;)
João Portela
+3  A: 

Pyevolve is a Genetic Algorithms/ Genetic programming Python library.

Amit
+2  A: 

Although it is not strictly AI, the scikit-learn has a lot of machine learning algorithms that can come in handy. Two important details are that it is BSD-licensed, and that it focuses on having fast and numerically-efficient algorithms.

Gael Varoquaux