Artificial Intelligence (AI) Programming in Ruby
Ola Bini (of JRuby fame) is starting a series of blog posts about artificial intelligence programming in Ruby, based off of the landmark textbook "Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp" by Peter Norvig (currently the Director of Research at Google). PAIP is a significant work in the artificial intelligence world, and despite being published in 1992 it still has a lot of relevance.
Ola is working through the book and rewriting the examples to suit Ruby developers (with Norvig's permission) - this code will be available from a Github repository as soon as it's written/updated. Ola says he'll be explaining all of the code as he goes along, so owning the book isn't a prerequisite.
Aside from the brief introduction to the concept, Ola has produced the first post in the series: Language Generation - where he looks at the generation of natural language. If you have even a casual interest in artificial intelligence, this will be a good series to follow. You might also appreciate the following Ruby / AI resources:
- AI Related Ruby Extensions
- AI4R - a library containing a number of AI functions for Rubyists
- A port of M. Tim Jones' AI "Application Programming" examples from C to Ruby - a similar project to Ola's, but that appears to have fizzled out.
Post supported by thoughtbot training — thoughtbot is a web app consultancy specializing exclusively in Ruby since Rails 1.0. We provide an Advanced Rails training class, where we share our best practices and have students write code for a real-world app, Umbrella Today.