[Newbies] Studying Artificial Intelligence

Ryan Mitchley ryan.mitchley at gmail.com
Fri Mar 14 16:01:54 UTC 2008


Hi Thiago

I think there used to be a Squeak Prolog somewhere, but I'm not sure where
it went or if it's compatible with the current images (I'm pretty new to
Squeak myself). That could certainly form the basis of an expert system in
Squeak.

There's a Prolog interpreter written in OMeta
(http://www.cs.ucla.edu/~awarth/ometa/ometa-js/prolog.html) and JavaScript,
desribed in the "STEPS Toward The Reinvention of Programming" paper
(http://www.vpri.org/pdf/steps_TR-2007-008.pdf). It shouldn't be too hard to
turn those into working Squeak code.

Of course, vanilla Prolog is lacking some features that would make it useful
for general purpose AI, e.g. reasoning under uncertainty, notions of time
and sequence, constraints. I think the idea of classes  simplifies reasoning
under uncertainty, since they make the dependence amongst rules and terms
much more explicit (solving the "frame problem" to some extent... i.e. the
normal problem with Bayesian reasoning is that joint probabilities grow
exponentially with the size of the system being modeled).

I hope someday to spend some time implementing a kind of Agent oriented AI,
where an Agent is defined as an object with goals, knowledge, and means to
achieve those goals using that knowledge. Learning involves the assertion
and retraction of meta-knowledge... (I think it was the extremely
interesting SOAR project that viewed learning as chunking - i.e. learning is
simply a way of pruning the search tree through the use of inferred
meta-productions). The reflective and meta-programming features of Smalltalk
makes collaboration amongst agents much easier - since agents can describe
their own abilities (I guess methods and behaviours).

This is, of course, if you're on the symbol-processing side of the AI
fence... (although, it's interesting to note that neurons and rules have a
similar N-in, 1-out structure. I like to think of a rule base as converged
neural network :)

Anyway, I just need to get rid of my full-time engineering job so that I can
actually explore these ideas someday!

Ryan



-- 
View this message in context: http://www.nabble.com/Studying-Artificial-Intelligence-tp16044540p16048127.html
Sent from the Squeak - Beginners mailing list archive at Nabble.com.



More information about the Beginners mailing list