Boeing Blackboard Power Point Presentation Notes
Good Afternoon. Today I will be giving you a presentation on
the Boeing Blackboard System. This
system was later renamed Erasmus. The reason
I chose to do my presentation on this topic is from my time in the Air
Force. Boeing builds a lot of systems
for the Air Force so I thought this system would be the most interesting.

Today in my presentation I
am going to cover five broad points.
First I am going to briefly
go over what a blackboard system is.
Then I will cover what the
Boeing Blackboard System is.
I will then touch on how things
were covered in the Boeing Blackboard system
I will cover briefly on a
problem they encountered dealing with the nature of a blackboard system
Finally I will give you places
to look for additional sources of information.

What makes up a blackboard
system? There are basically three parts
to all blackboard systems.
There is always a central data storage location called the blackboard, hence the name. This area is where all of the data that is being worked with is stored.
There is a set of
independent tasks or Knowledge Sources, which use the data on the blackboard to
generate additional data that other knowledge sources could use.
And finally there is a scheduler which controls which knowledge source is allowed to work with the data on the blackboard.

How does it all work? As you can see here I have displayed a blackboard, four different tasks, and a scheduler.
Originally some initial data is
put on the black board. This can be
from some user interface application, or dumped there by some other data
source.
Once the data is there the
different tasks evaluate the data and determine if they can do anything with
it. In this case we are pretending that
two different tasks can manipulate the data.
The scheduler than has to
evaluate these two tasks and determine which task will be the most beneficial
to allow to run at this point. In this
case it chose Task 2.
Once Task 2 is finished
processing the data it retrieved it is then allowed to write any generated data
back to the blackboard. This will in
turn probably cause additional tasks to speak up and say they can do
something. The problem continues in
this fashion until the problem is solved or no further tasks can do anything
with the data.

The Boeing Blackboard was
derived form two different blackboard systems.
One was the BB1 system developed at Stanford University. The main purpose and advantage of this
system was getting diverse knowledge sources to collaborate in solving complex
knowledge in the form of control knowledge.
The second system used was GBB, which is a commercial product out on the
market today. It was originally
developed at the University of Massachusetts.
It focused on a very powerful, efficient and expressive language for
accessing information from the blackboard.
I heard in the presentation given in class it said the Boeing Blackboard
Project was built on the Hearsay III system.
I found this to be a false statement.
Development on the Boeing
Blackboard System began in the Mid 1980’s
Later the name of the
project was renamed to Erasmus.
The project was eventually
shelved right around 1990.
Currently the Erasmus system
is not used in the Boeing Corporation.

Now I am going to talk a
little about the Erasmus blackboard architecture.
Like Hearsay III and most other
blackboard architectures the Erasmus blackboard was divided into layers.
Knowledge sources would trigger on data on the
blackboard in there level. They would
then process and develop data, which they then put back on the blackboard, in
many different levels thus allowing knowledge sources on those levels to
trigger.

What does the Erasmus scheduler does and how does it do it.
Each task when it can do
something with the data it indicates it to the scheduler.
The scheduler then does an evaluation function on the available tasks and prioritizes them and tells each task to go in its turn.
There appears to be some
contradiction among documents on how exactly the scheduler determined which
knowledge source to allow to execute next.
In the document handed out in class in said that there was a separate control
blackboard that handled this functionality.
However I determined from a more reliable source that this wasn’t the
case at all and that actually the project just used an evaluation function to
determine which knowledge source should be allowed to go next. For now I have to say that the evaluation
function seems correct but hopefully more documentation may be found in the
future which may clear this up.

What are some significant facts about the knowledge sources?
First that the knowledge sources in the Erasmus system ran in parallel to each other. Meaning the system could have one task working on one level while another was working on a different level.
A Knowledge source can be
almost any program that is able to manipulate the data that is contained on the
black board. This includes but is not
limited to C++, Fortran, Rule Based Systems, and Frames.

What problems were discovered while developing the Erasmus system? Bottlenecks.
As I heard discussed in the class videotapes the bottleneck for most blackboard systems was accessing the data that was stored on the blackboard.
For the Erasmus system however this was not a problem because one of the underlying systems GBB significantly addressed this problem.
The bottleneck for the
Erasmus system was at the scheduler.
Since the system was designed to allow multiple knowledge sources to be
running at once the limitation was evaluating each knowledge source with an
evaluation function and prioritizing them quick enough to take advantage of the
CPU time available. To solve this they
came up with a quick efficient evaluation function.

Was Erasmus ever used?
Yes it was. It was used to develop a few experimental
programs. The were manly for testing
purposes. The programs include: PHRED- a system that generated processing
plans for the production of aircraft parts, SADVISOR- a simulation of a safety
advisory system for a space station, KRYPTO- explored the representation of and
reasoning with constraints, and my favorite PATTON- which as far as I can tell
was a little war games simulation.

There are some additional sources of information if you want to find out more on this topic.
The first is a book called
Blackboard Architecture and Applications.
It contains a chapter in it that was written by the developers of
Erasmus.
There was also an article
written by one of the developers of the Erasmus system in the International
Journal of Intelligent Systems Vol 3 pages 281-293

In summary what have I covered
I covered what a blackboard
system was and how it works.
I gave a brief history of the
Erasmus system
I talked about how different
parts of the Erasmus system were implicated.
I discussed the bottleneck they
encountered with the scheduler
And I gave you some additional
places to look for more knowledge of this system.

Here are my references.
