I'd like to add to this discussion...

I too did my graduate work at Cal Poly SLO, and worked closely with Dr. Myers (in fact he was my masters thesis adviser). The blackboard system we worked on at the time was called Marble, the successor of an earlier BB system named Pebble. If I recall (this was about 10 years ago) Marble ran on a Sequent multiprocessor. But we also did some experimental work with distributed expert systems using a library called PVM (Parallel Virtual Machine).

Further, the CAD system Alan was referring to was probably ICADS, something developed primarily by students working at CADRC at Cal Poly (http://www.cadrc.calpoly.edu/). Dr. Myers was an instrumental influence of CADRC as its original technical director.

Today, CADRC has a sister commercial company, CDM Technologies, Inc. (http://www.cdmtech.com/) where I work. Several of our projects and products make use of some of the concepts of blackboard systems and distributed, collaborative agents. We've moved on from simple constructs for knowledge representation and now use information rich ontologies. However, we do still make use of CLIPS and/or Jess where inference based agents are called for.

Please contact me, or post to this mailing list, if you have any specific questions regarding blackboard systems and inference based agents.

Alan Davis
CDM Technologies, Inc.
CADRC Cal Poly, San Luis Obispo


Alan Moore wrote:

Scott,

Someone else is likely to have a more relevant answer but I thought I'd give my 2 cents worth - it's been a while (15 years?!) so I hope I can remember this correctly...

During my graduate studies I worked with Dr. Len Myers and others at CalPoly SLO on a BB based system that used CLIPS (Jess' predecessor.) In that system, there was a distributed set of agents that worked in cooperation to advise a CAD system user about their current drawing.

This system worked by having each agent have it's own rulebase and working memory. The BB was implemented by special (bbassert) and (bbretract) functions that sent the facts to a central server from which any registered agent listeners would get a subsequent broadcast message with the fact(s).

The listening agents could then do whatever they wanted with the knowledge, usually by calling (bbassert) themselves. It was a pretty simple distributed blackboard system. You could probably build the plumbing for one of these types of systems yourself quite easily.

As I remember it, the tricky part was coordinating/arbitrating the agents and keeping them from, in circular fashion, asserting and retracting each other's facts. This task was left to a conflict resolver agent.

I'm sure there is a lot of theory you could read up on about this topic so I won't go into it here. In our system, each agent posted their suggestion (e.g. a value for a drawing attribute, etc) to the blackboard and the conflict resolver made it's decision and determined the final result/value. Each agent would then have to deal with the new reality.

It was fun to work on and I'm sure some CalPoly SLO staff, faculty, or students are on this list and could share with you what happened to that system or it's derivatives.

Good luck!

alan



Krasnigor, Scott L (N-AST) wrote:

I have been asked by the powers to be to investigate using Jess in conjunction with a blackboard framework. I was wondering if anyone out there has any experience with this combination and could provide some insight or could point me to some good resources/examples on the subject. Thanks.

Scott L. Krasnigor
Principal Engineer/Scientist
Atlantic Science & Technology
Lockheed Martin - MS2


--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
--------------------------------------------------------------------



--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
--------------------------------------------------------------------

Reply via email to