Sunday, March 10, 2024

MicroCODIL

             

Most of the CODIL research was carried out on mainframe computers which have long been retired from service, but in the early 1980s it was decided to produce a demonstration version, in the form of an educational package that would work on a BBC Micro - which was a popular hobby minicomputer which was used widely in schools and over 1.5 million were produced. The result was MicroCODIL. A large number of BBC microcomputers have survived (typically several are advertised at any one time on eBay) the package can still be run to demonstrate MicroCODIL and how it provides a transparent human-friendly framework.

The BBC computer was tiny compared with the main frame computers used to support the early research on CODIL, and the high-powered computers  used elsewhere for AI research. The BBC Model B computer had a memory of 64 KB and this area had to be shared with the screen image, the  floppy disc buffers, the operating system work space and the MicroCODIL code and the working data areas.  In addition the code for the operating system, basic interpreter, and floppy dice interface were held on read-only chips. The big design question was to decide how much of the CODIL logic could be included in MicroCODIL, as there was clearly going to be pressure on the size of the software.

the pressure to produce a small compact version of CODIL caused a major rethink into the way recursion was handled - helped by the way that recursion was implemented in BBC Basic.  As a result the central CODIL decision making unit could be shrunk to a highly recursive  and very flexible routine of less that 100 bytes of BBC Basic code. In "well-ordered" procedural programming terms this routine was "dirty" because it had multiple entry and exit points but this allowed the system to flexibly switch between routes through the task network, and as a result MicroCODIL (despite its much smaller size) ended up logically more powerful, and supporting more "demons" than its main-frame predecessors. Of course the small size of the memory iimposed limits on the size of the lexicon of set names, and the number and size of the sets being processed (although these could be held as CODIL-text files on the floppy discs). However there is no doubt that if MicroCODIL was rewritten to work on a larger computer system it would be much more powerful that any of the earlier main-frame based interpreters.

MicroCODIL was produced in two forms:

  • A single-sided demonstration floppy disc, which would run on any standard BBC Computer with a disc drive. The disc included a  number of demonstrations which allowed the user to use the transparency features so the system could show how information was processed.
  • A pair of double sided floppy discs which included the full MicroCODIL software and a comprehensive set of demonstrations, with facilities which adjusted to various versions on the computer. There was a detailed MicroCODIL manual that included full details of the software.
  • An additional floppy disc which included demonstrations relevant to the use of MicroCODIL for teaching local history - with a supporting manual.
MicroCODIL papers
The software was well reviewed - see Reviews of MicroCODIL - but did not fit in with the National Curriculum (based on more conventional systems).

The current archives include:

  • BBC Model B computer (needing repair)
  • BBC Model Master (believed working)
  • BBC Twin floppy dic drive (believed working)
  • BBC Monitor (faulty)
  • Boxes of floppy discs containing software, support documentation,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           etc.
Two years ago MicroCODIL was running satisfactorily on the BBC master - but a recent test suggests that there is a fault in either the BBC  Master or the monitor. Plans are being made to get a working system up and running again.

In addition the floppy discs are probably not a good form for long stay archiving and presumably their contents should be copied to a more permanent digital format for long term storage.

I am currently going to try and get myself BBC system up and running and to ensure there are suitable long term digital copies of the program and demonstration applications. This will allow me to post live examples of the CODIL system running in future posts on this blog.

However the compact central highly recursive processing needs a closer examination. CODIL was designed to have a human interface which modelled how non-mathematicians processed information and this comparatively tiny routine models the way the human short term memory  uses information in the long term memory network to make decisions. As such it could be a stepping stone on the way to understanding how human intelligence evolved, although because it relates to a small and simple model it may say little about  the more mathematically sophisticated and computing power hungry approach underlying modern ARTIFICIAL intelligence research



                                                                                                                                                                                                                                                                                                                                                                                                                                                   

No comments: