Programmer's Apprentice For A Special-Purpose Robotics Dataflow Language

The motivation for this development is a need to construct a robot simulation facility which will assist in the development of effective algorithms to plan and control robot movements. It was thought that a system that presented robot's movements with an animated graphic display would be useful in the design and testing of robot planning and control programs. In this research a "programmer's apprentice", called the Graph Design Assistant (GDA), has been designed to help researchers construct robot simulation models on an Evans and Sutherland PS 300 graphic workstation. A programmer's apprentice is an expert system with knowledge about a programming task. It guides and advises a programmer as he interactively builds a program. This article describes how the system allows a researcher to develop a program on the PS 300 without having to learn the intricacies of the PS 300's dataflow language. In this system, plans are templates for portions of a graph in the functional graph network. The plans are similar to the macros used in the Evans and Sutherland Functional Graph Network Editor. The difference is that plans have slots which can be expanded to arbitrary structures. Some of the other aspects of the GDA are the development of an interactive interface, a library of plans, a user controlled agenda, consistency checker, and plan creation and editing capability.