LEARNING OF SENSORY-MOTOR SCHEMAS IN A MOBILE ROBOT Alan H. Bond and David H. Mott Artificial Intelligence Laboratory, Queen Mary College, University of London, Mile End Road, London, El 4NS, England ABSTRACT A learning system is described which was used to control a simple robot vehicle and to autono- mously learn behaviour patterns. The system is loosely based on Becker's model of Intermediate Cognition. I INTRODUCTION There are a number of reasons to regard sensory-motor learning as a basis for intelligence, and therefore to be of greater interest than other forms of learning. Our learning system took Becker's Model of Intermediate Cognition as its starting point and developed and modified it con- siderably: Becker [l] himself did not implement his model. Mott [2] h a s c r i t i c i s e d B e c k e r ' s original model. Further details of this work can be found in [3] and [4]. We used a simple but real robot vehicle, the Queen Mary College Mark IV Experimental Robot. It had a set of sensors including touch bars on all four sides, photocells pointing in f r o n t o f the vehicle and battery level sensors. The robot had a number of other sensors that were not used in this work. The program was written in Pop-2 and ran on an ICL 1904S mainframe computer. II THE SCHEMA MODEL Kernels The system accepted a stream of atomic sensory "kernels" <BRIGHT>S from photocells <FRONT>S from the front touch bar <FULL>S battery fully charged <HUNGER>S battery low <LOW>S battery very low or overcharged (<HUNGER>S a l s o p r o d u c e d i n t h i s c a s e ) <CHARGE>S battery on charge <HIGH>S used internally but not produced by sensing any physical situation It generated a stream of motor kernels <FORW>M few inches forward <BACK>M " backward <LEFT>M 1 0 d e g r e e s r o t a t i o n l e f t , about centre <RIGHT>M " right " <CRY>M bleep Morse code for SOS B. Short term memory and events The stream of sensory and motor kernels flow- ed into an infinitely long queue or STM. The system operated on a discrete time scale, strictly alternating between motor output and sensory input. An item in the queue was the set of kernels occur- ring at one time, which were thus either all sensory or all motor kernels. A set of kernels occurring at a given time slot was called an event e . g . E={<CHARGE>S <FRONT>S>. An event could be empty. The contents of STM were an event sequence e . g . E 1 -->E 2 -->-->E 3 where temporal adjacency is denoted by "-►". C. Schemas and the model This research was supported by a two-year grant from the United Kingdom Science Research Council. The central data structure was the system's model of the world, which was an unordered set of "schema". A schema was of the form [event sequence ■> event sequence] where "=>" means "predicts the occurrence of" If the l e f t hand side of a schema matched the contents of STM, it was said to occur and the model predicted that the right hand side would occur, starting in the next time slot. The schema were uncertain, with each kernel having a certainty value for its membership of the schema, and each schema having an overall certainty value of giving a correct description of what happens in STM. Ill PREDICTION AND BEHAVIOUR We regarded Prediction and Behaviour as separate processes. Prediction was the bottom up generation of strings of events starting from the contents of STM and using the model. Instead of producing a prediction tree, it was found easier to verify predictions if they were amalgamated i n t o a 159