Distributed Reasoning

Introduction

There are many reasons why we might want to implement or adopt a distributed approach to reasoning in an AI system:

Not all procedures a parallelisable. Indeed many AI procedures being very complex can be hard to parallelise. However, many can benefit from speed on a number of nodes alone. A more formal parallelisation - adopting parallel programming paradigms - is obviously advantageous.

 

Distributed reasoning systems

distributed reasoning system is one that is composed of separate modules (called agents) and a set of communication paths between them.

Such a system must provide:

Rich and Knight deal with aspects of general coordination, control and communication structures. In this lecture we will look at two specific structures that have become popular distributed reasoning mechanisms:

 

Blackboard systems

The basic idea of a blackboard system is illustrated in Fig 23.

http://users.cs.cf.ac.uk/Dave.Marshall/AI2/blackboard.webp

Fig. 23 Blackboard model

The system consists of:

Knowledge sources

-- a set of independent modules containing domain-specific knowledge.

Blackboard

-- the shared data structure through which knowledge sources communicate.

Control system

-- determined the order in which knowledge sources will operate on entries in the blackboard.

 

Knowledge organisation and reasoning

Consider a group of people assembling a jigsaw with a blackboard:

For the solution to be a blackboard solution:

To illustrate the importance of the control systems consider one constrain in the above problem:

The blackboard lies in a narrow corridor so that only one person can view the board at a single instance.

 

Implementation issues

The above example illustrates some problems that may arise when implementing a blackboard system. In this section we consider some general considerations needed when implementing and designing a blackboard framework.

Knowledge sources

Blackboard data structure

Control

Their purpose is to focus attention.