%@ page language="java" contentType="text/html" %> <%-- Include common initialisation code --%> <%@ include file="/arch/common.jsp" %> <%-- The current tab --%> <% String currentTab = "Research"; %> <%-- Content of navigation pane --%> <%@ include file="nav.jsp" %> <% showCurrentLink=true; %> <%-- Current navigation location --%> <% String currentNav = "Reports and Theses"; %> <%-- Include the code for the document header --%> <%@ include file="/arch/header.jsp" %>
I.D. Craig, The Formal Specification of a Blackboard Framework (May 1, 1991).
The blackboard architecture is a complex, though powerful, model of problem-solving, and opinions vary as to its interpretation. The use of formal specifications for blackboard systems appears warranted by their complexity, their application in real-time and safety critical domains, and because of the informality of the construct itself. This paper describes the Z specification of a blackboard framework, the aims, and the methods by which it was executed. At present, the specification is only a top-level one (and occupies over 100 A4 pages, including proofs and explanatory text): this has allowed concentration on the interpretation of the architecture, and has allowed the formal proof of a number of properties which have, hitherto, had 'folklore' status. The specification exercise revealed a number of areas in which further work was required. The blackboard specification is one of a number of Z specifications of AI architectures that we have undertaken: the problem areas first identified in the blackboard specification have reappeared in the others, and we suggest ways of solving the problems which are, perhaps, of general utility.