Nearly all programmable computing systems are based by design on exact logic, under the assumption of a "perfect" mathematical world. By extension, logic used in robotics and other autonomous systems is also exact. However, all cyber-physical systems must interact with a world using sensors and actuators that by the very nature of this interaction, are not fundamentally exact or deterministic. Machine learning methods based on neural-inspired models have done much to allow machines to cope with inexact interactions with the world, but at the cost of explainability and adherence to desired models that we believe are considered "known" and need not be learned.
This research project seeks to achieve a middle ground between exact computation and pure machine learning by applying a probabilistic programming paradigm to the design of robots and autonomous systems. "Programs" are created as semantic hierarchies such as a Bayesian network of random variable tensors, and tensor arithmetic is used to operate on "data" within these tensors to achieve desired behaviours. The programming model is therefore functional rather than procedural. Additional benefits of using tensor arithmetic to achieve behaviours include that operation is continuous rather than having a defined "start" and "end", and no segmentation faults or program errors are possible since all operations have a closed domain and range.
A variety of programming methods can be implemented together for such a system. Expert knowledge can be encoded by a programmer writing a program as a hierarchy of functions or elements in SysML or AADL, abstract models of behaviour can be encoded by creating a structure of elements and data that reflects a real system, and "learning" programs is possible by creating structures from desired or historic data. In this project, methods of probabilistic programming such as these will be implemented with the goal of allowing robots and autonomous systems to be created with greater simplicity and efficiency for the challenges of dealing appropriately with harsh environments, uncertainty and variability.