[Gbbopen-list] What's the position of "blackboard" in AI research?

Chun Tian (binghe) binghe.lisp at gmail.com
Thu Apr 17 12:50:38 EDT 2008


>
>> It seems that author has been working in this area for more than  
>> 20  years (1986-2008).
>
> Well, I'm certainly biased (if not seemingly quite old...!), but:
>
>> So is this (blackboard related topics) is "outdate" or important- 
>> but- most-people-dont-think-so theory?
>
> As a Common Lisper you should be used to the "it's OK if everyone  
> isn't using/talking about it" take on things.

Hmm... As a Common Lisper I don't care if others also use CL, but to  
learn and use the best language and related tools.

>
>
> Truth be told, most blackboard-system applications came to a  
> blackboard approach (if they survived at all) only as a last  
> resort.  "We didn't think we needed/had time to use it."  This has  
> held true for all those years and, unfortunately, continues today.   
> There are also a number of "modern" tools/mechanisms that provide  
> some of what a serious blackboard-system approach provides.  (For  
> example, see space-based architectures, the repository software  
> pattern, etc.)
>
> The basic idea of software (and sometimes human) entities  
> interacting via a shared workspace (and hopefully with some sort of  
> control) is enticingly simple.  (There's even a tiny CL version of a  
> blackboard-system included as part of my AI Expert article.  This  
> was provided to illustrate the basic ideas and to show how *not* to  
> build a blackboard-system application that would not be incredibly  
> slow.  I learned later that a number of people downloaded and  
> actually tried to use that *bad*--but working--example in real  
> applications!!)

I'm working in advance Unix system and network administration. I think  
to detect a remote device's status and give administrators operation  
notes automatically, is a multi-agent job: One get OS-level info  
through SNMP, the other one get hardware-level info through IPMI,  
third one test network bandwidth or just ping remote IP addresses.  
Every agent gives report of which part of system is wrong, based on  
their limited info. Then a "control" component should use some rules  
to combine all these results into a final report. I think this is very  
like GBBopen's approach.

I have some tools to use: a pure-lisp SNMP library which I wrote  
myself, LispWorks' KnowledgeWorks which give me a rule-based engine  
(OPS5/CLIPS + Prolog), ResearchCyc for knowledge representation and  
Ontology part, CORBA (LispWorks ORB) for communication between nodes  
of this lisp systems, Elephant or Common SQL to store data. And  
GBBopen, as the "control" part of the final system (if possible). It's  
a big plan, I'll try to finish it in next several years.

>
>
> Anyway, the bottom line is that there is no deep theory behind the  
> basic blackboard-system approach (so it doesn't fit into AI course  
> structures or textbooks).  How all the pieces come together to work  
> powerfully and efficiently, however, is subtle.  As with CL  
> programming, there's no simple "replicate this pattern" workflow to  
> crafting a complex BB application (so that scares other people  
> away).  I highlighted some of this in my ILC03 presentation/paper.
>
> As for GBBopen, no one is "selling" anything (so there is no  
> motivation to grab market share).  Some very complex and serious  
> things are being done with it (as was the case with the GBB  
> product), but they are often "off the radar" (sometimes  
> intentionally).

Do you know how I know GBBopen? This link:

http://article.gmane.org/gmane.lisp.lispworks.general/6880

If I'm not a LispWorks user, I would never know GBBopen. So maybe you  
should post announces to comp.lang.lisp when next GBBopen version  
released, this can bring you more users:)

>
>
> So, good for you that you are working through GBBopen and the  
> Tutorial. That will put you in a position to judge whether a  
> blackboard-system approach is useful for your work.  Note that there  
> are also applications that make use of GBBopen's blackboard objects  
> (unit instances) and proximity-based retrieval capabilities, link  
> (bidirectional pointer) operations, and event functions—but without  
> using a control shell. By traditional definition, these applications  
> are not "blackboard applications," but they still use  
> GBBopen's :gbbopen-core facilities to significant advantage.
>

Thanks for all of this post. I'll continue to learn GBBopen. I'm 26  
years old (4 years Lisp), have enough time to learn anything:)

Regards,

Chun Tian (binghe)
NetEase.com, Inc.


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



More information about the Gbbopen-list mailing list