CODIL and Cognitive Load
A big thank you to Bruce, who drew my attention to the idea of Cognitive Load and the work of John Sweller and others. It is not surprising that I was not aware of this during my original research on CODIL as John's paper was not published until June 1988 and the CODIL project effectively closed down in September of the same year.
It is clear that while the phrase "cognitive load" had not been invented when I started the CODIL project the human factors that relate to phenomenon were very much taken into account when I drew up the design of a possible human friendly computer.
There is a very big difference in the task-related factors to be considered when comparing Sweller's work with mine. Much of the work relating to cognitive load has been concerned with human instructors teaching human pupils, and much of the related cognitive load theory is based on research in this area, often using computers as communication tools.
My CODIL research started as a design study into migrating a very large and complicated commercial batch processing system onto a more advanced computer which would have some, by today's standards, very primitive terminals, At the time (1967) no-one had attempted such a large and complex move and there were no guidelines to suggest how it might be done which meant I had a pretty free hand to explore various options. In retrospect it is clear that my pre-computer background working on complex and uncertain information processing tasks influenced the solution I came up with.
I started with the assumption that the sales staff were knew all about the customers, products and market place, and had to deal with unforeseen difficulties. It was sensible to ask if providing them with terminals would allow them to directly control the new system - by directly instructing it themselves, bypassing the systems analysts and programmers of the earlier system. It was also realised that sales staff couldn't control the system unless they could understand how it worked. For this reason one of the things the system must do was to be able to show the human user how the information they had provided was being processed. I was certain that one could not expect the sales staff to do conventional programming - so though about how to design a program that handled sales information in the same way as a salesman did.
Perhaps the idea of "thinking small" started because the amount of space on the terminals was going to be limited - and it was felt that all relevant information should appear on the screen at the same time - as there was not deliberate attempt to consider the work of Miller on short term memory. On the other hand I was personally well aware of the practical problems of limited memory capacity from my pre-computer work
The important step was the discovery that the sales task when viewed globally was very large and complicated - but that it could be broken down into millions of remarkably simple tasks, each of which was very compact. It was only later realised fitted that the number of chunks of sales information in these individual tasks fitted well with Miller's number of seven for the size of the human short term memory.
When the original idea was generalized to handle any suitable application the idea was to produce a system which never overloaded the human user. The approach used in CODIL simulators was for the user to describe everything in "chunks" (i.e CODIL Items) where each chunk was a named set, a member of that set, a subset, or description of that set in terms of other chunks. These chunks would reflect the language the salesmen used in processing sales contracts, etc.
Chunks were arranged in statements within a structured knowledge base - each statement representing a "context" and for most tasks these would be less than 7 chunks long. "The Facts" were a statement which defined the current context (i.e. the information to be processed).
Decision making involved using The Facts as a search window searching the knowledge base and merging in any matching contexts. This was a dynamic process as every time The Facts were changed the search window automatically changed,
In effect the knowledge base contained statements that might be (in a conventional computer system) be either program and data - and the search process extracted only the small number of directly relevant statements. The result could be likened to generating a micro-program tailored to the immediate sub-task. The key thing was that this should be small enough to show to the human observer without cognitive overload. (These micro=programs are always simple as they never contained an "IF" statement simply because non-matching statements are automatically filtered out in the search process).
In designing the algorithm for managing The Facts, the danger of overloading the human needed to be considered. Chucks which were no longer relevant needed to be discarded so that the number of active chunks did not exceed the human user's short term memory. Of course the computer could handle almost any number of chunks - but if it did this would be too confusing for the human and computer to work together symbiotically.
The project was abandoned in 1988, basically because it was being developed in a department dedicated to teaching conventional computer technology and no specific cognitive trials were ever carried out. In retrospect research using a CODIL-like system for psychological trials varying the size and working of short term memory would have been useful. Some AI type research was done, and CODIL was used to support a significant heuristic problem solver, but full details were never published because the unconventional approach was not acceptable to the AI establishment of the 1970s and 80s. On the other hand the CODIL simulator was used to support teaching aids for student classes of up to 125 students, and while overload was considered the use was more along the lines of conventional computer-aided instruction.
While I would love to get the CODIL system working and carry out some trails relating to cognitive load there is a problem as at 79 my cognitive load-carrying capacity is not what it was - but perhaps some younger people might like to take up the challenge.