Rules based policy engine

Ryan Meador ryan.d.meador at
Mon Jul 21 03:08:58 CEST 2008

matt joyce <matt.joyce at ...> writes:
> Ryan, what approach have your efforts taken already?
> Any interesting insights to the problem?
> Matt

My efforts as far as applying my inference engine to the OpenMoko platform
basically consist of a few ideas rattling around in my head -- nothing concrete.
 I'm not a professional at this stuff, just an enthusiastic amateur trying to
follow in the footsteps of some of the very interesting early AI research
projects (most inference-based approaches to AI died out in the 80's, but a few
are still around).  To that end, most of my work has been focused on things not
directly useful to a phone platform.

I think it's important that we use an existing general-purpose platform such as
Prolog (at least, it's about as general purpose as logic programming gets...). 
This saves us from reinventing the wheel and also prevents us from thinking
ourselves into a corner -- a general purpose system will likely be much more
extensible and flexible for powerusers (and with this device, who isn't?) than
something we dream up.  Taking an inference-based approach to setting up the
rules in the phone could allow us to create rules that are more abstract than
most of the examples I've seen on this list.  Instead of telling it "don't use
the ringer when I'm at the office", it could be "don't use the ringer when I'm
doing work".  "Work" would be defined by other rules, such as your proximity to
the office, whether or not you've scheduled an appointment in the calendar with
contacts from work (think lunch meeting), and if you have a deadline that isn't
marked as complete and it's only an hour away (you're probably workign furiously
to meet it).  That's just an example I created just now, and not particularly
good -- good examples are hard to think of, but that's largely because the
possibilities are endless.  As one other person on the mailing list noted, the
possible configurations of the rules engine that are nonsensical outnumber the
meaningful ones by millions to one :)

That babbling probably wasn't very helpful to anyone, but maybe it will at least
build enthusiasm.  I think the gist of it was mostly this: make it more flexible
than it needs to be, and also make the rules capable of building on top of each
other to create more complex conditions.  Just my $0.02 :)


More information about the community mailing list